【问题标题】:Helm Umbrella Chart, dependency on remote ChartHelm Umbrella Chart,对远程 Chart 的依赖
【发布时间】:2020-11-29 04:24:28
【问题描述】:

我是 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:是否可以在我的 Helm Chart 中包含 kubectl 命令?

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

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

谢谢

【问题讨论】:

  • kubectl 命令实际上会删除什么?常规运行似乎有点生硬。
  • 嗨@DavidMaze,kubectl delete 用于在任何新部署之前重置和清理环境。此部署用于开发笔记本电脑环境,因此我们需要确保 helm chart 在每次需要时都从全新安装开始。
  • 我建议 helm delete 旧安装,或者在笔记本电脑环境中使用像 minikube 或 kind 这样可以轻松删除整个(单容器)“集群”的工具。

标签: kubernetes deployment scripting devops kubernetes-helm


【解决方案1】:

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

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

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

【讨论】:

    猜你喜欢
    • 2020-06-02
    • 1970-01-01
    • 2021-03-28
    • 1970-01-01
    • 1970-01-01
    • 2018-04-15
    • 1970-01-01
    • 2020-12-04
    • 2020-11-30
    相关资源
    最近更新 更多