首页 > 解决方案 > Helm Umbrella Chart,对远程 Chart 的依赖

问题描述

我是 Helm Kubernetes 的新手。我目前正在使用 bash 命令列表来创建安装了许多容器的本地 Minikube 集群。为了减轻手动负担,我们正在考虑创建一个(伞形)Helm Chart 来执行整个命令列表。

在我需要在图表中运行的命令之间,很少有(清理)kubectl 删除,即:

kubectl delete all,configmap --all -n system --force --grace-period=0

还有一些 helm 安装,即:

helm repo add bitnami https://charts.bitnami.com/bitnami && \
helm install postgres bitnami/postgresql --set postgresqlPassword=test,postgresqlDatabase=test && \

问题1:是否可以kubectl在我的 Helm Chart 中包含命令?

问题2:是否可以从仅远程可用的图表中添加依赖项?即来自上面 postgres 的依赖。

问题 3:如果您认为 Helm 不是执行此操作的正确工具,您会建议什么?

谢谢

标签: kubernetesdeploymentscriptingdevopskubernetes-helm

解决方案


您不能kubectl在 Helm 图表中嵌入命令式命令。已安装的 Helm 图表跟踪其拥有的一组特定 Kubernetes 资源;你可以helm delete发布,那将删除那组特定的东西。同样的,如果你已经安装了 Helm chart,你也可以helm upgrade,新的 chart 内容会替换旧的。

对于您描述的工作流程 - 您正在维护一个基于 Minikube 的开发人员环境,并且您希望能够开始干净 - 有两种好的方法可以采用:

  1. helm delete已经存在的版本,将卸载其托管的 Kubernetes 资源;或者
  2. minikube delete整个“集群”(作为单个容器或 VM),然后minikube start是一个新的空“集群”。

推荐阅读