首页 > 解决方案 > Kubernetes 从同一个部署/副本中获取同级 Pod IP/属性

问题描述

需要将部署的 ip 和/或任何元数据设置为可作为环境变量用于同一部署下的每个 pod...

例如:拥有 3 个副本部署。需要为其他两个 pod 中的每一个设置其他 IP 地址的 env var。需要为彼此的两个 pod 设置主机名。拥有

HOSTNAME=deplymentNAME-d74cf6f77-q57jx
deplymentNAME_PORT=tcp://10.152.183.27:13000

需要补充:

HOSTNAME2=deplymentNAME-d74cf6f77-y67kl
HOSTNAME3=deplymentNAME-d74cf6f77-i90ro
deplymentNAME_PORT2=tcp://10.152.183.45:13000
deplymentNAME_PORT3=tcp://10.152.16.28:13000

这些应该在三个吊舱上相对可用。到目前为止,每个 pod 都只有自己的数据,我们需要将其他数据传播到同一部署中的其他副本。

标签: kubernetesenvironment-variableskubernetes-deployment

解决方案


好吧,我发现我的应用程序是有状态的而不是无状态的应用程序,它需要固定/稳定的主机名/存储等...

我决定使用 statefulset 控制器

参考:


推荐阅读