【发布时间】:2019-10-30 14:44:51
【问题描述】:
我有一个包含 nodejs 应用程序的 docker 映像,我通过 kubernetes 部署部署了它,我有 3 个 pod。我需要将每个部署的名称传递给相关的 pod,这样我就可以为每个部署拥有一个唯一的 id,该 id 仅对该部署是唯一的,并且该部署中的所有 pod 都可以使用该 id。 这个也没有多大帮助:
Kubernetes deployment name from within a pod?
我知道我可以在 :
env:
- name: unique id
value: {{uuidv4}}
但我更喜欢以下:
env:
- name: deployment name
value: a way to get the deployment name
你知道它是否可以实现吗?
【问题讨论】:
-
你需要更具体一些,你为什么需要 pod id,你是在尝试让 pod 相互连接来做某事吗?
-
@paltaa 实际上我使用 redis 并将其中一个 pod 分配为每个部署中的领导者,并在 redis 中跟踪领导者 ID。应该为新的部署负责人分配一个新的 ID。
-
@paltaa 另外值得注意的是,我不是在寻找 pod 名称而是部署名称,因为我需要查看即将出现的 pod 是否与旧部署或新部署有关。
-
@paltaa 所以每次部署将创建 3 个 pod,代码将抓取部署 pod 并将其中一个 pod 分配为领导者并在 redis 中跟踪它
标签: kubernetes openshift kubernetes-pod