Почему я не могу получить доступ к своему EKS NLB из Интернета?

У меня есть кластер EKS с 3 узлами, работающий на AWS. это частный кластер в частной подсети с хостом-бастионом в общедоступной подсети. Оба в одном и том же VPC. Маршрутизация была настроена, и она работает, поскольку у меня настроен интернет-шлюз и настроен шлюз NAT.

У меня запущено приложение для реагирования, для которого я попытался создать балансировщик сетевой нагрузки. Однако, когда я перехожу по адресу в браузере, я не могу найти доступ к моему приложению React. До этого я тестировал это с помощью классического балансировщика нагрузки и смог получить доступ к приложению React из веб-браузера. Поэтому я не уверен, в чем разница с Network Load Balancer. Контроллер AWS NLB также установлен правильно.

      kind: Service
apiVersion: v1
metadata:
  name: <svc-name>
  annotations:
    service.beta.kubernetes.io/aws-load-balancer-type: external
    service.beta.kubernetes.io/aws-load-balancer-subnets: private-subnet,public-subnet
    service.beta.kubernetes.io/aws-load-balancer-nlb-target-type: ip
    service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing
spec:
  selector:
    app: <pod-selector-name>
  type: LoadBalancer
  ports:
  - protocol: TCP
    port: 80
    targetPort: 80

Я также вижу, что Network Load Balancer был создан в консоли AWS с активным состоянием и DNS типа k8s-XXXXXXxxxxxxxXXX-10fc47.elb.eu-west-1.amazonaws.com. Я пытался использовать этот DNS в браузере, как если бы я использовал классический балансировщик нагрузки, но он не работает.

Когда я смотрю на слушателей, я вижу изображение ниже

И когда я углубляюсь в переадресацию, чтобы увидеть цели, я вижу некоторые IP-адреса в списке и в работоспособном состоянии, хотя эти частные IP-адреса не совпадают с EKS-узлами, на которых запущено приложение K8s React. поэтому я не уверен, что это причина.

0 ответов

Другие вопросы по тегам