我有一个Kustomization文件,该文件正在生成ConfigMap并按预期方式运行。我需要能够创建一个新的pod,它可以从相同的configMap中提取环境变量,而无需重新生成configMap。 换句话说,我必须这样做:
envFrom:
- configMapRef:
name: config-name-HASH
但是我想这样做:
envFrom:
- configMapRef:
name: config-name
,无需使用kustomize重新生成ConfigMap。 我发现PodPresets似乎可以解决,但这是在Alpha中,因此对我的组织不利。
答案 0 :(得分:1)
那是不可能的。尽管ConfigMap卷是就地自动更新的(因此您可以对其进行切换,并使您的应用在更新时重新读取文件),但是仅在以下情况下才检查从ConfigMap中提取的环境变量(或Secret,所有这两者均适用)吊舱启动。通常的解决方法是将configmap的校验和或生成ID作为注释放置在pod模板中,这会通过Deployment,StatefulSet或DaemonSet控制器自动触发滚动更新。