Pod通讯

时间:2015-12-02 17:11:57

标签: kubernetes

两个不同豆荚之间的沟通如何在Kubernetes中发生?

在我的情况下,我有两个pod: frontend backend ,两者都有不同的容器。 我希望我的前端pod与后端pod通信,但我不想使用后端pod的IP(即硬编码)。

是否可以通过服务?

2 个答案:

答案 0 :(得分:11)

  

是否可以通过服务?

是的,services是处理此问题的推荐方法。为每个pod(或建议的复制控制器)设置服务后,您可以通过service environment variable找到服务IP,例如: <{1}}和BACKEND_SERVICE_HOST用于“后端”服务。

答案 1 :(得分:7)

推荐的方法是使用DNS群集加载项:http://kubernetes.io/docs/user-guide/services/#dns

来自&#39;留言簿&#39; app:

https://github.com/kubernetes/kubernetes/blob/3574999fa34d54c47f43efd9eaff7e1c571c7910/examples/guestbook/php-redis/guestbook.php#L13

他们使用:$host = 'redis-master';作为与redis-master广告单元进行通信的默认方法。

redis-master-service.yamlhttps://github.com/kubernetes/kubernetes/blob/3574999fa34d54c47f43efd9eaff7e1c571c7910/examples/guestbook/redis-master-service.yaml

中定义的内容