Я хочу настроить входной контроллер на AWS EKS для нескольких микросервисов, доступ к которым осуществляется из внешней системы.
Микроуслуги доступны через виртуальные имена хостов, такие как svc1.acme.com
, svc2.acme.com
, ...
Я настроил входной контроллер nginx с помощью рулевого управления: https://github.com/helm/charts/tree/master/stable/nginx-ingress
Моя идея состояла в том, чтобы зарезервировать Elastic IP Address и связать контроллер nginx с этим IP, установив переменную externalIP.
Таким образом я смогу получить доступ к службам с помощью стабильной записи DNS с подстановочным знаком *.acme.com --> 54.72.43.19
Я вижу, что служба входящего контроллера получает внешний IP, но IP недоступен.
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
ingress-nginx-ingress-controller LoadBalancer 10.100.45.119 54.72.43.19 80:32104/TCP,443:31771/TCP 1m
Есть идеи, почему?
Обновление:
Я установил входной контроллер с помощью этой команды:
helm install --name ingress -f values.yaml stable/nginx-ingress
Вот суть значений, единственное, что изменилось по умолчанию, это
externalIPs: ["54.72.43.19"]
https://gist.github.com/christianwoehrle/3b136023b1e0085b028a67ca6a0959b7