在Kubernetes中,我想找到从节点/Pod传出流量的所有IP。有人知道如何找到吗?因为一旦我们确定了这些IP,我们需要将其提供给用户,以便他们从自己的一侧加入白名单。如何在每个节点/ Pod上执行简单测试,以查看将执行请求的传出IP地址?谢谢
nvbavucw1#
如果您在GKE上并且集群是公共的您的郊游going IP将始终是POD运行所在的Node's IP。这将列出节点的所有外部IP,并根据在哪个节点上运行的POD检查将作为传出IP的所有外部IP。
kubectl get nodes -o wide
如果要快速验证传出IP使用exec进入任何POD
kubectl exec -it <POD name> -n <namespace name> -- /bin/sh
并运行命令
curl https://ifconfig.me/
它将响应您的传出IP,在您的情况下,这将是POD运行的节点的IP。
mqxuamgl2#
白名单/解除阻止需要相同的信息,这很有帮助
kubectl get nodes -o wide | awk '{print $7}'
或者
kubectl get nodes \ --selector=kubernetes.io/role!=master \ -o jsonpath={.items[*].status.addresses[?\(@.type==\"ExternalIP\"\)].address}
2条答案
按热度按时间nvbavucw1#
如果您在GKE上并且集群是公共的
您的郊游going IP将始终是POD运行所在的Node's IP。
这将列出节点的所有外部IP,并根据在哪个节点上运行的POD检查将作为传出IP的所有外部IP。
如果要快速验证传出IP
使用exec进入任何POD
并运行命令
它将响应您的传出IP,在您的情况下,这将是POD运行的节点的IP。
mqxuamgl2#
白名单/解除阻止需要相同的信息,这很有帮助
或者