【问题标题】:helm does not create custom resource definition for Azure k8shelm 不会为 Azure k8s 创建自定义资源定义
【发布时间】:2025-12-09 07:30:01
【问题描述】:

我正在尝试使用 helm 安装letsencrypt。 几天前我尝试使用 helm,它在我之前的安装中运行良好。
我使用了以下方法
使用 createcustoresource=false

进行掌舵安装
helm install --name cert-manager --namespace kube-system --set createCustomResource=false --set rbac.create=true stable/cert-manager --set ingressShim.extraArgs='{--default-issuer-name=letsencrypt-prod,--default-issuer-kind=ClusterIssuer}'

在日志中它清楚地表明它不会创建自定义资源,如证书、集群颁发者、颁发者

当我执行以下命令时(使用 createCustomResource=true ),我希望 helm 应该创建这些之前未创建的自定义颁发者。

helm upgrade --install --namespace kube-system cert-manager stable/cert-manager --set createCustomResource=true --set rbac.create=true --set ingressShim.extraArgs='{--default-issuer-name=letsencrypt-prod,--default-issuer-kind=ClusterIssuer}' 

不确定我是否遗漏了什么

【问题讨论】:

  • 应该,你确定不?在最坏的情况下,你可以做helm delete cert-manager --purge 并重新创建
  • 我做到了,但仍然无法创建自定义资源
  • 删除后?好的,试试这个:helm upgrade cert-manager --install --namespace kube-system stable/cert-manager --set createCustomResource=true,rbac.create=true --version 0.4.0。这对我有用,没问题
  • 感谢附加版本参数,我可以创建自定义资源,但我的最终目标是使用 webhook 创建证书。 helm upgrade --install --version 0.4.0 --namespace kube-system cert-manager stable/cert-manager --set createCustomResource=true --set rbac.create=true --set ingressShim.extraArgs=' {--default-issuer-name=letsencrypt-prod,--default-issuer-kind=ClusterIssuer}' --set webhook.enabled=true 我看不到我的用 kubectl 秘密证书描述秘密 mycertificate-fordomain-tls
  • 好吧,我认为那是一个不同的问题。我把版本放在命令中只是因为我复制粘贴它,你可以修改它\排除它

标签: azure kubernetes-helm lets-encrypt azure-aks


【解决方案1】:

可以使用 helm 通过以下命令创建自定义资源:

helm upgrade cert-manager --install --namespace kube-system stable/cert-manager --set createCustomResource=true,rbac.create=true --version 0.4.0

【讨论】: