Ответ 1
Поскольку вы уже не упомянули об этом, я просто предполагаю, что вы используете Google Container Engine (GKE) для настройки Kubernetes.
В манифесте ресурса службы, если вы устанавливаете Type
to LoadBalancer
, Kubernetes на GKE автоматически настраивает балансировку сетевой нагрузки (балансировщик нагрузки L4) с помощью GCE. Вам придется прекратить соединение в своем модуле с помощью собственного сервера или что-то вроде nginx
/apache
.
Если ваша цель - настроить балансировщик нагрузки (HTTP/HTTPS) L7 (что будет иметь место), будет проще и проще использовать ресурс Ingress
в Kubernetes (начиная с версии v1.1
). GKE автоматически настраивает балансировку нагрузки GCE HTTP/HTTPS L7 с помощью этой настройки.
Вы сможете добавить свои сертификаты TLS, которые автоматически будут загружены на балансировщик нагрузки GCE GKE.
Эта настройка имеет следующие преимущества:
- Укажите службы для каждого пути и порта
URL Maps
для его настройки используетсяURL Maps
из GCE). - Настройте и завершите SSL/TLS на балансировщике нагрузки GCE (для его настройки используются
Target proxies
из GCE). - GKE автоматически также настроит
health checks
GCE для ваших служб.
Ваша ответственность будет заключаться в обработке логики бэкэнд-сервиса для обработки запросов в ваших контейнерах.
Более подробная информация доступна на странице GKE о настройке балансировки нагрузки HTTP.
Помните, что при использовании GKE он автоматически использует доступную поддержку балансировки нагрузки GCE для описанных выше случаев использования, и вам не нужно вручную настраивать балансировку нагрузки GCE.