gpt4 book ai didi

kubernetes - 如何找出负载均衡器服务的外部 IP?

转载 作者:行者123 更新时间:2023-12-04 20:30:12 24 4
gpt4 key购买 nike

我在 Google Cloud Platform 上使用 Kubernetes Engine。我有一个 Pod 在 Docker 暂存容器中运行一个进程。我还有一个负载均衡器服务,可以让我从外部世界访问 pod。

在 pod 中运行的进程需要知道它的外部 IP 地址是什么。我怎样才能得到这个?

在使用 Kubernetes Engine 之前,我使用的是 Compute Engine,可以通过以下方式找到外部 IP 地址:

curl -H "Metadata-Flavor: Google" http://metadata/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip

是否有任何我可以使用的内部工具可用于我的流程?或者我是否需要调用可以镜像回 IP 地址的外部站点的过程?

最佳答案

每个 Pod(除非配置为不这样做)在 /var/run/secrets/kubernetes.io/servicetoken/token 中都有有效的 kubernetes 凭证as described here所以答案是使用kubernetes API询问Service在 Pod(s) 前面为其 status:loadBalancer:ingress:ip: as described here我完全有理由相信 GKE 会及时了解负载均衡器的任何更改。 kubernetes API 总是(?)位于 https://kubernetes (这通常就足够了,或者 https://kubernetes.default.svc.cluster.local 是它的全名),因此 Pod 执行查找所需的配置应该很少。

该响应的星号是必须向位于它前面的 Service 的 Pod 提供 Service 的名称,因为(在大多数情况下)Pod 无法知道有多少个 Service 指向到它。

关于kubernetes - 如何找出负载均衡器服务的外部 IP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48291745/

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