Kubernetes AWS EKS не обеспечивает балансировку нагрузки

#amazon-web-services #kubernetes #load-balancing #amazon-eks

#amazon-веб-сервисы #kubernetes #балансировка нагрузки #amazon-eks

Вопрос:

Новичок в мире Kubernetes AWS EKS и был бы рад получить поддержку.

Я пытаюсь развернуть приложение узла. У меня есть правильные политики IAM, привязанные к моей роли IAM в EKS, я также настроил правильные теги в частной и общедоступной подсетях.

Мой Kubernetes yml выглядит следующим образом.

 kind: Deployment
metadata:
  name: test
spec:
  replicas: 1
  selector:
    matchLabels:
      app: test
  template:
    metadata:
      labels:
        app: test
    spec:
      containers:
        - name: test
          image: test:latest
          ports:
            - containerPort: 3000
          imagePullPolicy: Always
---
kind: Service
apiVersion: v1
metadata:
  name: test
spec:
  type: LoadBalancer
  selector:
    app: test
  ports:
  - protocol: TCP
    port: 80
    targetPort: 9376
 

Служба запускается, но внешний IP-адрес продолжает указывать «ожидание», и балансировщик нагрузки не подготовлен.

Спасибо

Ответ №1:

Для устранения этой проблемы вы можете найти соответствующие журналы сбоев в разделе Журналы уровня управления кластером AWS EKS. Пожалуйста, обратитесь к этому документу от AWS с инструкциями по просмотру журналов плоскости управления кластером AWS EKS, а также с инструкциями по включению журналов плоскости управления.

Если у вас есть доступный журнал плоскости управления кластером AWS EKS, вы можете выполнить следующий запрос в CloudWatch Logs Insights. Для получения информации о выполнении запроса AWS CloudWatch Logs Insights, пожалуйста, обратитесь к этому документу от AWS. После выполнения запроса проверьте значение responseObject.reason поля или вы также можете развернуть сообщение, чтобы просмотреть подробности.

 fields @timestamp, @message, requestObject.kind, requestObject.metadata.name,requestObject.spec.type,responseObject.status,responseObject.message,responseObject.reason,requestObject.spec.selector.app
| filter requestObject.spec.type='LoadBalancer' 
| sort @timestamp desc
 

Ответ №2:

Если вы используете Mnikube

 minikube tunnel
 

это поможет вам.

Эта команда может предоставить доступ к службам типа LoadBalancer.

Вот ссылка https://minikube.sigs.k8s.io/docs/commands/tunnel / .

Комментарии:

1. Этот вопрос был не о minikube и даже не о локальной разработке. Не соответствующий ответ.