2016-11-08 2 views
0

Я начал 3 различных стручки (в GKE):Kubernetes: как открыть соседние стручки

kubectl run ubuntu --image myimage --namespace misko -r 3 --command -- /some/binary --bind-to-port 1234 

Теперь мне нужно открыть имя хоста/IP-адреса этих стручков от 4 стручка, который необходимо подключить к тем 3 узлы.

Возможно ли это?

ответ

0

Это создает Deployment, который будет управлять поведением и репликами модулей, но вам нужно создать службу для этого развертывания, чтобы открыть порты внутри или вне кластера.

kubectl expose deployment ubuntu --port=1234 --target-port=1234 

После того, что вы можете получить доступ к стручки в круговой системе, используя имя службы и номер порта:

ububtu:1234 

Если другой стручок это на другом пространстве имен, вы можете использовать полный DNS вместо:

ubuntu.misko.svc.cluster.local:1234 

Пожалуйста, обратите внимание на kubectl expose больше примеров

+0

Спасибо, я Awar e этого решения, но проблема в том, что мне нужно получить IP-адреса всех этих контейнеров (не используя round robin). Но теперь я понимаю, что это глупая идея с точки зрения дизайна, и я не должен этого делать. – Misko

+0

Вы также можете создать 3 отдельных развертывания с тремя различными службами и только с одной репликой/развертыванием. Затем используйте DNS. Зависит от того, чего вы пытаетесь достичь. В случае перезагрузки IP-адрес будет изменен. – Camil

+0

Я пытаюсь создать реплики mongo, но они зависят от имен хостов. Это непригодно для Кубернетов. – Misko

Смежные вопросы