gpt4 book ai didi

google-cloud-platform - 使用 kubectl 或 kubernetes api 获取服务的外部 ip

转载 作者:行者123 更新时间:2023-12-02 06:50:50 24 4
gpt4 key购买 nike

各位,
有没有比解析 kubectl 输出更简单的方法来获取 Kubernetes 中服务的外部 IP 地址?
kubectl get services/foo --namespace=foo -o json
谢谢!

最佳答案

使用 kubectl 是获取服务入口 IP 地址的最简单方法。如果您只想获取 IP 地址,那么您可以将大部分解析作为 kubectl 命令本身的一部分进行。

kubectl get svc foo -n foo \
-o jsonpath="{.status.loadBalancer.ingress[*].ip}"

这可能不适用于您,但一些云负载均衡器(如 AWS ELB)为您提供主机名而不是 IP 地址,因此您需要查找它。
kubectl get svc foo -n foo \
-o jsonpath="{.status.loadBalancer.ingress[*].hostname}"

如果您愿意,可以使用 jsonpath union 运算符来获得两者。
kubectl get svc foo -n foo \
-o jsonpath="{.status.loadBalancer.ingress[*]['ip', 'hostname']}"

如果你想要一个人类可读的输出,你可以使用 custom-columns输出格式。
kubectl get svc foo -n foo \
-o custom-columns="NAME:.metadata.name,IP ADDRESS:.status.loadBalancer.ingress[*].ip"

关于google-cloud-platform - 使用 kubectl 或 kubernetes api 获取服务的外部 ip,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45001915/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com