2015-12-02 35 views
9

兩個不同豆莢之間的通訊如何在Kubernetes中發生?豆莢通訊

在我的情況,我有兩個艙:前端後端,都有不同的容器。 我希望我的前端pod與後端pod進行通信,但我不想使用後端pod的IP(即硬編碼)。

可以通過服務嗎?

回答

7

是否可以通過服務?

是的,services是推薦的方法。一旦您爲每個吊艙(或複製控制器,如建議)設置了服務,就可以通過service environment variable找到服務IP,例如, BACKEND_SERVICE_HOSTBACKEND_SERVICE_PORT用於「後端」服務。

4

一個推薦的方法是與DNS羣集附加組件:從 '留言' 應用http://kubernetes.io/docs/user-guide/services/#dns


實施例:

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

他們使用:$host = 'redis-master';作爲缺省方法與redis-master pod溝通。

其中定義於redis-master-service.yamlhttps://github.com/kubernetes/kubernetes/blob/3574999fa34d54c47f43efd9eaff7e1c571c7910/examples/guestbook/redis-master-service.yaml