В Rancher 2.0 Kubernetes служба режима ClusterIP не обслуживается в циклическом режиме без входа Loadbalancer - PullRequest
0 голосов
/ 18 октября 2018

Что у меня есть:

Я создал один Kubernetes кластер, используя один узел Rancher 2.0 развертывания.который имеет 3 etcd, управляющие узлы и 2 рабочих узла, подключенных к кластеру.

Что я сделал:

Я развернул один API-шлюз в этом кластере и один экспресс mydemoapi сервис (без базы данных) с 5 пакетами на 2 узлах на порту 5000, который я не хочу публично раскрывать.Итак, я только что сопоставил конечную точку службы с именем службы в шлюзе API http:\\mydemoapi:5000, и она была доступна общедоступной конечной точке шлюза.

Постановка задачи:

mydemoapiуслуга предоставляется случайным образом, а не в циклическом режиме, поскольку значение по умолчанию kube-proxy является случайным согласно Rancher документация Балансировка нагрузки в Кубернетесе

Частичный успех:

Я создал один входной балансировщик нагрузки с Keep the existing hostname option в правилах Rancher с этим URL-адресом mydemoapi.<namespace>.153.xx.xx.102.xip.io и прикрепил этот сервис к входу, он обслуживается циклически, но с одной проблемой.Эта служба использовала xip.io с общедоступным ip моего рабочего узла и была доступна публично.

Требуется помощь:

Я хочу отобразить свойвнутренняя служба clusterIP в шлюз с внутренним доступом, так что его можно обслуживать для внутреннего шлюза в режиме циклического перебора и, следовательно, для публичной конечной точки шлюза.Я не хочу показывать свой сервис публично без шлюза.

1 Ответ

0 голосов
/ 18 октября 2018

Не уверен, в каком облаке вы работаете, но если вы работаете в чем-то вроде AWS, вы можете установить следующую аннотацию на true в вашем Service определении:

service.beta.kubernetes.io/aws-load-balancer-internal: "true"

Другие поставщики облачных услугесть похожие решения, а некоторые даже нет.В этом случае вам придется воспользоваться услугой NodePort и перенаправить внешний балансировщик нагрузки, например, с haproxy или nginx напереадресовывать трафик на этот NodePort

Другой вариант - вообще не использовать Ingress, если вы хотите сделать циклический перебор между вашими сервисами, это изменить ваши kube-proxy конфиги наиспользуйте старый прокси-режим namespace или более расширенный прокси-режим ipvs .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...