如何解决使用 Kubernetes Python 客户端获取 Ingress 网关 IP 地址
在 Seldon 部署可用后,我使用以下 kubectl 命令获取 Ingress 主机 IP 地址。
kubectl -n istio-system get service istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].ip}'
我想从 Kubernetes Python API 运行相同的命令,但在文档中找不到有关如何执行此操作的任何信息。
你能帮我吗?
提前致谢。
解决方法
每个 Kubernetes 对象类型上的每个 REST 操作都有一个单独的客户端函数。拥有该对象后,您就可以像浏览任何其他 Python 对象一样对其进行导航。
service = kubernetes.client.read_namespaced_service('istio-ingressgateway','istio-system')
print(service.status.load_balancer.ingress[0].ip)
# Note the capitalization ^^^^ of load_balancer,not loadBalancer
service
对象是一个 V1Service 对象。更一般地说,API documentation 包括所有请求和返回类型的每个方法调用和文档。
服务是标准的 Kubernetes 对象。如果您正在处理一些 Istio 特定的对象,例如 VirtualServices,则有 a separate API for custom resources。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。