k8s 获取 Pod ip 添加到环境变量
0x00 事件
有一个需要将 Pod 自身的 ip 地址添加到环境变量的需求,可以在 yaml 文件的 env 中这样设置:
env:
- name: POD_OWN_IP_ADDRESS
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: POD_OWN_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: POD_OWN_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
除了 Pod 本身的 ip
地址,上面的例子中还声明了 Pod 自身的 name
和 namespace
环境变量
在 Pod 中查看环境变量:
$ kubectl exec -it pod/you_pod_name -- env | grep OWN
POD_OWN_IP_ADDRESS=100.107.55.20
POD_OWN_NAME=you_pod_name
POD_OWN_NAMESPACE=dev