在K8S POD中獲取pod所在node節(jié)點(diǎn)的ip

網(wǎng)上找了很多辦法都沒用,自己琢磨了下,在環(huán)境變量里設(shè)置fieldRef讀取status.hostIP的值,這個其實(shí)就是宿主機(jī)的值,再在Pod里通過環(huán)境變量讀取就好了。

同理一樣可以獲得節(jié)點(diǎn)名稱,所在的命名空間等


fieldRef<Object>:當(dāng)前Pod資源的指定字段,目前支持使用的字段包括 metadata.name、metadata.namespace、metadata.labels、metadata.annotations、spec.nodeName、spec.serviceAccountName、status.hostIP和status.podIP。

resourceFieldRef<Object>:當(dāng)前容器的特定系統(tǒng)資源的最小值(配額)或最大值(限額),目前支持的引用包括limits.cpu、limts.ephemeral-storage、requests、cpu、requests.memory、requests.ephemeral-storage。


這是一個yaml示例

apiVersion: v1

kind: Pod

metadata:

? name: env-demo

? labels:

? ? purpose: demonstrate-environment-variables

spec:

? containers:

? - name: env-demo-container

? ? image: busybox

? ? command: [ "httpd" ]

? ? args: [ "-f" ]

? ? env:

? ? - name: HELLO_WORLD

? ? ? value: just a demo

? ? - name: MY_NODE_NAME

? ? ? valueFrom:

? ? ? ? fieldRef:

? ? ? ? ? fieldPath: spec.nodeName

? ? - name: MY_NODE_IP

? ? ? valueFrom:

? ? ? ? fieldRef:

? ? ? ? ? fieldPath: status.hostIP

? ? - name: MY_POD_NAMESPACE

? ? ? valueFrom:

? ? ? ? fieldRef:

? ? ? ? ? fieldPath: metadata.namespace

? restartPolicy: OnFailure

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容