Облачная платформаEvolution

Не работает внешний доступ к балансировщику


Ниже описана проблема доступа к балансировщику по публичному IP-адресу из интернета и способы ее решения.

Описание проблемы

  • Соединение с сервером не устанавливается или внезапно прерывается.

  • При попытке подключения через веб-браузер или утилиту curl появляется ошибка «Empty reply» или другое сообщение о сбое соединения.

  • В логах и интерфейсе балансировщика нет информации об активных соединениях, опция Проверка доступности отмечает серверы целевой группы как «неработающие» или «недоступные».

Решение

Чтобы устранить проблему:

  1. Убедитесь, что на пути трафика от ресурсных единиц к серверам целевой группы не действуют блокирующие правила. Например, группы безопасности на сетевых интерфейсах виртуальных машин целевой группы пропускают трафик.

  2. Хотя бы одна виртуальная машина в целевой группе должна быть включена и доступна.

    1. Откройте консоль или подключитесь к серверу по SSH и проверьте с помощью команды, что сервис слушает нужный порт, например 80 или 443:

      sudo netstat -tlpn | grep :80
    2. Проверьте, что на этих портах нет блокирующих firewall-правил внутри ОС.

    • Проверка доступности балансировщика настроена на правильный Порт и Путь к обработчику. Например, порт 80, путь /healthz.

    • Сервис на целевой ВМ должен возвращать HTTP 200 OK на этот путь. Если проверка доступности возвращает ошибку, трафик не будет перенаправляться на целевые ВМ.

  3. Убедитесь, что порты — Порт балансировщика и Порт целевой группы — и Транспортный протокол указаны верно.

  4. (При создании через Managed Kubernetes) Проверьте параметры и работу балансировщика в Managed Kubernetes.

  5. Проверьте логи на стороне приложений и балансировщика.

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

  6. Если проблема не исчезнет, обратитесь в техническую поддержку с указанием:

    • ID проекта и ID балансировщика;

    • ID целевой группы, если проблема связана с ней.