【发布时间】:2022-01-11 04:43:03
【问题描述】:
我想在我的一个 IoT 设备上运行一个 pod。
这些设备中的每一个都包含一个我希望这个 pod 使用的环境变量。
有没有办法使用helm/kubectl 的内置模板将此环境变量注入 pod?
我在我的deployment.yaml 文件上尝试了以下操作:
env:
- name: XXX
value: $ENV_FROM_HOST
但是在执行 pod 并尝试获取 XXX 值时,我从主机获取字符串 $ENV_FROM_HOST 而不是它的值:
$ echo $XXX
$ENV_FROM_HOST
谢谢。
【问题讨论】:
-
嗨。这个环境变量会保存任何敏感信息吗?
-
@EmidioNeto 嗨,绝对不是。对于我的用例来说,使用 k3s 机密将是一个巨大的过度杀伤。
-
环境变量一般设置在哪里? pod 实际运行在哪个节点上是否重要?
-
我在所有节点上使用
ansible设置了这个环境。所以不,没关系,因为每个 pod 都会在其主机上拥有这个环境。 -
我的问题更多,主机没有环境变量,进程有。那么您是想从特定进程中获取环境变量,还是像
/etc/profile这样的shell 点文件,或其他来源?你能把它注入到像 ConfigMap 这样的 Kubernetes 原生存储中吗?如果您为 Pod 配置了一个变量值,但它被调度到具有不同值的节点上,这对您的处理有影响吗?
标签: kubernetes environment-variables kubernetes-helm