根据节点标签的值设置DaemonSet的环境变量值
假设有一个标签为 grafana-map= 的节点,而我的容器需要环境变量键 INSTANCE=。
我期望是这样的:
- name: INSTANCE
valueFrom:
fieldRef:
fieldPath: spec.nodeName.grafana-map.value
解决方案
这种做法行不通,你需要改用另一种方式在代码中获取信息。
有一组可通过downward API使用的字段 specific set of fields available through the downward API。这些字段都是Pod对象上的字段。
你可以注入 spec.nodeName,因为调度器会在Pod上填充该字段,但你不能使用这种机制来注入关于节点的信息,或从Node对象获取元数据。
你可以把所需的任意信息写到磁盘上的一个文件中,并使用 hostPath: 类型的卷来检索它。
另一种选择是在ConfigMap中存储一个JSON文件或其他支持字典类型对象的文件格式,并在启动时对其进行解码。
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。