如何从其IP地址获取pod的名称?无论kubectl
在何处被调用,sed
+ awk
/ grep
/ kubectl
/等的神奇咒语是什么?
答案 0 :(得分:17)
kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE
alpine-3835730047-ggn2v 1/1 Running 0 5d 10.22.19.69 ip-10-35-80-221.ec2.internal
kubectl get --all-namespaces --output json pods | jq '.items[] | select(.status.podIP=="10.22.19.69")' | jq .metadata.name
"alpine-3835730047-ggn2v"
kubectl get --all-namespaces --output json pods | jq '.items[] | select(.status.podIP=="10.22.19.69")' | jq .spec.containers[].name
"alpine"
答案 1 :(得分:1)
通过IP地址获取Pod名称的另一种方法是这样的:
"Honey, I'm $HOME"
在此示例中,IP地址为“ 10.2.6.181”的pod名称为“ jenkins-2-7d6d7fd99c-9xgkx”。
答案 2 :(得分:0)
无需其他工具即可完成,只需kubectl就足够了:
kubectl get pods -o custom-columns=:metadata.name --no-headers=true --field-selector status.podIP=<pod-ip-address-goes-here>