Kubernetes无法获得自己的集群IP

时间:2016-03-22 10:56:50

标签: docker kubernetes microservices

我有3个kubernetes服务:

service 1:

name: abc

service 2:

name: def

service 3:

name: hgk

在服务1上运行的应用程序中,我成功使用环境变量来获取其他服务的集群IP。

System.getenv(DEF_SERVICE_HOST); --> success
System.getenv(HGK_SERVICE_HOST); --> success

但是,当我调用服务1的environemnet时,它返回null

System.get(ABC_SERVICE_HOST); ---> null 

看起来它无法获得自己的群集IP。

你们有什么想法吗? 非常感谢你!

1 个答案:

答案 0 :(得分:1)

在pod中填充的唯一服务环境变量是在创建pod之前存在的服务。环境变量一旦启动就不会注入到运行的pod中。

我猜你在创建abc服务之前创建了abc复制控制器/ pod。如果您终止现有的pod并让它们重新创建,则应该设置ABC_SERVICE_HOST环境变量。