如何在K8s中将Pod IP分配给容器的参数字段

时间:2018-11-06 13:36:01

标签: kubernetes

我将在我的K8s部署中利用pod IP环境变量,以便将pod IP分配给正在侦听此IP的容器参数。我试图通过“ status.podIP”获取pod IP,并在arg部分中将其检索如下:

env:
 - name: MY_POD_IP
   valueFrom:
     fieldRef:
       fieldPath: status.podIP

容器是一个代理应用程序,正在侦听Pod IP及其自己的端口号。

- args:
   - --listen=MY_POD_IP:XXXX

但是此设置有时会返回绑定错误,如下:

  

绑定:无法分配请求的地址

,有时服务器错误为:

  

收听tcp:查找MY_POD_IP:服务器行为不正常

如果我用实际的Pod IP替换MY_POD_IP,则设置工作正常,但是由于此Pod IP在每个部署中都是动态生成的,因此我需要一个通用的解决方案将此IP分配给我的论点。有什么想法或解决方法吗?

谢谢。

1 个答案:

答案 0 :(得分:2)

尝试这种方式

- args:
   - --listen=$(MY_POD_IP):XXXX

参考:Use environment variables to define arguments