将变量传递给yaml文件中的args字段,kubernetes

Mag*_*gic 6 kubernetes

我正在写一个YAML文件来使用Kubernetes,我想知道如何将变量传递给args字段.

我需要做这样的事情:

args:  ['--arg1=http://12.12.12.12:8080','--arg2=11.11.11.11']
Run Code Online (Sandbox Code Playgroud)

但我不想硬编码这些值--arg1--arg2,相反,它应该是这样,

args:  ['--arg1='$HOST1,'--arg2='$HOST2]
Run Code Online (Sandbox Code Playgroud)

我该怎么做?

小智 1

您有两个完全不同的选项,并且实际上取决于您的用例,但两者都值得了解:

1) Helm允许您创建可以使用变量的 Kubernetes 定义模板。
在安装 Helm 图表时以及将生成的清单部署到 Kubernetes 之前,会提供变量。
您可以稍后更改变量,但它的作用是重新生成 YAML 并重新部署结果的“静态”版本(模板+变量=发送到 Kubernetes 的 YAML)

2) ConfigMap允许您将配置与 pod 清单分离,并在多个 pod/部署之间共享此配置。
您稍后可以从 pod/部署清单中引用 ConfigMap。

希望这可以帮助!