Создание внутреннего балансировщика нагрузки

В настоящее время тестируется Kubernetes 1.0.7 на AWS, и он отлично создает внешний балансировщик нагрузки, но я хочу знать, возможно ли создать внутренний балансировщик нагрузки, доступный только во внутренней подсети.


person John Smith    schedule 02.11.2015    source источник


Ответы (3)


Не из коробки (на момент написания этой статьи), но API Kubernetes Ingress развивается для поддержки внутренних балансировщиков нагрузки. Обратите внимание на следующее:

  1. Службы Kubernetes по умолчанию используют циклическую балансировку нагрузки.
  2. Вы можете развернуть что-то вроде балансировщика нагрузки службы [1] и получить доступ к своим службам на ClusterIP модуля балансировщика нагрузки, просто удалите строку hostPort в конфигурации rc [2], чтобы не показывать их на общедоступном IP-адресе виртуальной машины.

[1] https://github.com/kubernetes/contrib/tree/master/service-loadbalancer
[2] https://github.com/kubernetes/contrib/blob/master/service-loadbalancer/rc.yaml#L35

person Prashanth B    schedule 04.11.2015

Как упомянул Прашант, на данный момент нет встроенной поддержки, но я сделал следующее, и все работает отлично. Создал тип службы NodePort и вручную создал балансировщик нагрузки как внутренний lb и перенаправил трафик на узлы в указанном порту узла.

person John Smith    schedule 06.11.2015

Внутренние ELB поддерживаются, по крайней мере, начиная с версии Kubernetes 1.2.

В этой темы примените аннотацию services.beta.kubernetes.io/aws-load-balancer-internal к определению сервиса.

kind: Service
apiVersion: v1
metadata:
  name: someService
  annotations:
    - name: services.beta.kubernetes.io/aws-load-balancer-internal
      value: 0.0.0.0/0
person Chris Willmore    schedule 21.06.2016