3br*_*032 4 kubernetes kubernetes-helm
我有一个父图表,其中包含 4 个子图表,其中我想将 1 个特定子图表部署到不同的命名空间,并且该子图表中的所有模板文件都引用{{ .Release.Namespace. }}. 他们有什么方法可以修改.Release.Namespace.父图表中的子图表吗?
我不相信使用普通的 Helm 和你无法控制的图表是可能的。
当图表依赖于子图表时,可以自定义的内容相当少。父图表可以为子图表提供一组默认值,但不会进行任何计算,并且这些值可以由运行的人覆盖helm install。
当且仅当子图专门编写为部署到备用命名空间中
# Every object in the subchart must have this configuration
metadata:
namespace: {{ .Values.namespace | default .Release.Namespace }}
Run Code Online (Sandbox Code Playgroud)
然后您可以将该值提供给子图;但这不是默认配置。
我的一般经验是 Helm“伞形图表”在几个重要方面不灵活。还有一些更高级别的工具,例如Helmfile和Helmsman,它们提供了多个 Helm 图表的单命令安装以及全套选项(Helmsman 更简单,Helmfile 几乎允许在任何地方使用 Helm 样式模板,既更强大,也更复杂)。如果您需要安装四个图表,三个图表安装到一个命名空间,一个安装到另一个命名空间,这些工具可能会更好。
| 归档时间: |
|
| 查看次数: |
6243 次 |
| 最近记录: |