【问题标题】:Dynamic namespace variable in helm chart舵图中的动态命名空间变量
【发布时间】:2019-03-27 11:43:18
【问题描述】:

我与四个使用在 kubernetes 命名空间中设置的环境完全相同的团队合作。 我创建了 helm 图表来安装这些环境。一切正常,但由于主机名中的以下格式,我必须手动创建入口:

<namespace>.<app>.<k8sdomain>

问题是我只想使用 kubectl 更改上下文,然后运行这些图表,而不是编辑每个 values.yaml 来更改命名空间变量。

是否可以使用一些预定义或动态变量将正确的命名空间添加到 ingress 中的主机?

或者有没有其他解决方案可以帮助我解决这个问题?

谢谢。

【问题讨论】:

    标签: kubernetes kubernetes-helm


    【解决方案1】:

    命名空间值可以从 --namespace 参数派生,该参数与 helm chart 部署到的命名空间相同。在图表中,应该使用{{.Release.Namespace}} 访问它。 或者,您可以在使用 helm upgrade 部署 helm chart 时使用 --set 设置这些命名空间。如果环境很少,您可以在 values.yaml 中将它们作为别名访问,然后为它们设置命名空间值,如下所示:

    helm upgrade \
       <chart_name> \
          <path_to_the_chart> \
            --set <environment_one>.namespace=namespace1 \
            --set <environment_two>.namespace=namespace2 \
    ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-05
      • 1970-01-01
      相关资源
      最近更新 更多