【发布时间】:2021-09-04 02:59:20
【问题描述】:
以前我们只使用helm template 来生成清单并应用到集群,最近我们开始计划使用helm install 来管理我们的部署,但是遇到了以下问题:
我们的部署是一个简单的后端api,包含“Ingress”、“Service”和“Deployment”,当有新的提交时,将触发管道进行部署。
我们计划使用短提交 sha 作为镜像标签和 helm 发布名称。这是命令
helm upgrade --install releaseName repo/chartName -f value.yaml --set image.tag=SHA
这第一次运行得很好,但是当我创建另一个版本时它失败并出现以下错误消息
rendered manifests contain a resource that already exists. Unable to continue with install: Service "app-svc" in namespace "ns" exists and cannot be imported into the current release: invalid ownership metadata; annotation validation error: key "meta.helm.sh/release-name" must equal "rel-124": current value is "rel-123"
错误消息很清楚问题是什么,但我只是想知道在这种情况下使用 helm 的“正确”方式是什么?
为新版本卸载所有内容是不切实际的,而且我也不想继续使用相同的版本。
【问题讨论】:
标签: kubernetes kubernetes-helm