Дополнительная информация по 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":
-
Создайте балансировщик нагрузки; подробные шаги и параметры создания смотрите в разделе создания Load Balancer в AWS EKS Service Annotation Instructions.
-
Если команда не возвращает связанных Pod, значит в кластере не установлен AWS Load Balancer Controller. Service annotations не требуются; создавайте балансировщик напрямую.
-
Если команда возвращает связанные Pod, значит в кластере установлен AWS Load Balancer Controller. При создании балансировщика нагрузки в соответствующем кластере добавьте следующие service annotations:
-
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 будут распознаны облаком и получат назначенные адреса. Платформенный балансировщик нагрузки прочитает этот адрес и установит его в качестве собственного адреса доступа.