AWS EKS - невозможно получить доступ к apache httpd за LoadBalancer

Я развернул сервер apache httpd в контейнере и пытаюсь открыть его извне через LoadBalancer. Хотя я могу войти на локальный хост и получить ожидаемый ответ (curl -X GET localhost), когда я пытаюсь получить доступ к внешнему URL-адресу, предоставленному балансировщиком нагрузки, я получаю пустой ответ от сервера:

curl -X GET ad8d14ea0ba9611e8b2360afc35626a3-553331517.us-east-1.elb.amazonaws.com:5000
curl: (52) Empty reply from server

Любая идея, что мне не хватает - происходит ли какое-то дополнительное перенаправление, о котором я не знаю?

Ямл здесь:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: apache
labels:
  app: apache
spec:
  replicas: 1
selector:
  matchLabels:
    pod: apache
template:
  metadata:
    name: apachehost
    labels:
      pod: apache
    spec:
      containers:
      - name: apache
        image: myrepo/apache2
      ports:
      - containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
  name: apache
labels:
  app: apache
spec:
  type: LoadBalancer
  selector:
    pod: apache
  ports:
    - name: port1
      port: 5000
      targetPort: 80

Ваши стручки работают? Со стороны AWS обслуживаются ли целевые группы или экземпляры вашего балансировщика нагрузки?

Rico 19.09.2018 22:13

вы нашли какое-нибудь решение для этого?

Luv33preet 26.02.2019 08:19
Как установить LAMP Stack 1/2 на Azure Linux VM
Как установить LAMP Stack 1/2 на Azure Linux VM
В дополнение к нашему предыдущему сообщению о намерении Azure прекратить поддержку Azure Database для MySQL в качестве единого сервера после 16...
5
2
751
3

Ответы 3

1. Убедитесь, что ваша стручка работает.

2. Проверьте, что aws IAM и группа безопасности также могут быть портом 5000, который не открыт для публики. Используйте команду curl в мастере kubernet и проверьте порт.

3. Поделиться журналами модуля

Привет, модуль работает, потому что, когда я открываю на нем оболочку и заворачиваю localhost, я получаю ожидаемый ответ. Порт 5000 открыт, потому что я могу получить доступ к простому веб-приложению (в python / flask) через этот порт. Я не публиковал журналы модуля, потому что они не показывают ничего, кроме того, что apache запущен, но он не получает никаких запросов.

revhpstinkerpinker 20.09.2018 10:33

Удалось ли вам найти решение этой проблемы? Я столкнулся с аналогичной проблемой.

mithrandir 16.08.2019 15:39

проверьте балансировщик нагрузки aws на наличие открытого порта 5000 в группе безопасности для LB. как в связанном правиле.

проверьте входящее правило балансировщика нагрузки.

Если ваши поды работают на Fargate, служба балансировки нагрузки не будет работать: https://docs.aws.amazon.com/eks/latest/userguide/load-balancing.html

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