从另一个pod中抓取pod的IP地址

问题描述 投票:0回答:2

我有一个部署pod,需要获取另一个部署pod的IP地址,并将其用作环境变量。我能找到的最接近的是这个how-to-know-a-pods-own-ip-address-from-inside-a-container-in-the-pod

我知道我可以使用环境变量获取服务的IP地址:$<SVC NAME>_SERVICE_HOST注入在此服务之后创建的pod中。是否有类似的方法在第一次创建后将部署pod的IP地址注入另一个部署pod?

kubernetes environment-variables ip inject
2个回答
0
投票

您应该考虑通过ClusterIP服务公开目标pod,并使用服务的群集DNS FQDN访问该pod。使用此方法,您不必担心目标容器的确切IP,因为Kube代理将为您处理所有DNS和路由。然后,您只需要知道ClusterIP服务端点是什么,并通过它访问您的目标pod。

官方文档包含关于此主题的伟大的case studyinteractive tutorial

希望这可以帮助!


0
投票

目前无法在DNS或环境变量中找到另一个pod的IP。为此,您需要查询Kubernetes API。您可以使用pod和部署列表权限创建serviceaccount,然后使用Kubernetes API库或kubectl。

© www.soinside.com 2019 - 2024. All rights reserved.