Дополнительная информация по AWS EKS
Содержание
ТерминологияВажные замечанияИспользование EKS aws-lb для обеспечения внешнего доступа к контейнерным сетевым балансировщикам нагрузкиИнструкция по настройке service annotationsСпособ получения адреса доступаТерминология
Важные замечания
При создании балансировщиков нагрузки рекомендуется вручную настраивать service annotations, чтобы обеспечить корректное использование платформенным балансировщиком нагрузки aws-lb. Если соответствующие service annotations настроены некорректно, платформа по умолчанию будет использовать eks-clb, который имеет проблемы, связанные с UDP, что может привести к неожиданным ситуациям.
Использование EKS aws-lb для обеспечения внешнего доступа к контейнерным сетевым балансировщикам нагрузки
Инструкция по настройке service annotations
-
В соответствующем кластере выполните следующую команду с помощью kubectl для поиска всех Pod в namespace kube-system с именами, содержащими "aws-load":
-
Создайте балансировщик нагрузки; подробные шаги и параметры создания смотрите в разделе создания балансировщика нагрузки в AWS EKS Service Annotation Instructions.
-
Если команда выше не возвращает связанных Pod, значит в кластере не установлен AWS Load Balancer Controller. Service annotations не требуются; создавайте балансировщик нагрузки напрямую.
-
Если команда возвращает связанные Pod, значит в кластере установлен AWS Load Balancer Controller. При создании балансировщика нагрузки в соответствующем кластере добавьте следующие service annotations. Подробнее об аннотациях смотрите в AWS EKS Service Annotation Instructions:
-
service.beta.kubernetes.io/aws-load-balancer-type: external //Required -
service.beta.kubernetes.io/aws-load-balancer-nlb-target-type: ip //Required -
service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing // Optional. Добавьте эту аннотацию, если требуется поддержка публичной сети.
-
-
Способ получения адреса доступа
-
При создании контейнерных сетевых балансировщиков нагрузки заполненные service annotations будут установлены на LoadBalancer Service, соответствующий платформенному балансировщику нагрузки.
-
В публичных облаках LoadBalancer Services с соответствующими service annotations будут распознаны облаком и получат назначенные адреса. Платформенный балансировщик нагрузки прочитает этот адрес и установит его в качестве собственного адреса доступа.