Гид по технологиям

Создание Application Load Balancer в AWS и доступ к Apache через DNS

6 min read AWS Обновлено 01 Nov 2025
Создать Application Load Balancer и подключить Apache
Создать Application Load Balancer и подключить Apache

TL;DR

Application Load Balancer (ALB) — балансировщик нагрузки уровня приложения (OSI L7) в AWS. В этой инструкции показано, как создать ALB, зарегистрировать целевые EC2-инстансы с Apache и проверить доступ к приложению по DNS балансировщика. Включены шаги, чек-листы, рекомендации по безопасности и типичные ошибки для быстрого разворачивания в тестовой и подготовке к продакшену.

Важно: в тестовой среде допустимо использовать HTTP, но в продакшене рекомендуется настроить HTTPS и корректные правила безопасности.

Фон с логотипом AWS и облачной инфраструктурой

Load Balancer относится к сервисам EC2 в AWS. Application Load Balancer работает на седьмом уровне модели OSI (уровень приложения). ALB поддерживает маршрутизацию по пути (path-based routing), по хосту (host-based routing), маршрутизацию на основании полей запроса, а также регистрацию целей по IP-адресу (например, вне VPC). Благодаря этому можно гибко добавлять и удалять цели без прерывания потока запросов.

Для оплаты ALB вы платите только за используемые ресурсы (время работы и обработанные запросы). В статье показаны практические шаги по созданию ALB, регистрации инстансов и проверке доступа через DNS.

Кому пригодится эта инструкция

  • Инженерам DevOps и системным администраторам, настраивающим балансировку нагрузки в AWS.
  • Разработчикам, которым нужно обеспечить высокую доступность приложений на Apache.
  • Тем, кто изучает основы AWS и хочет отработать создание ALB в тестовой среде.

Предварительные требования

  • Учётная запись AWS (создайте, если её нет).
  • Один или несколько EC2-инстансов, на которых запущен Apache (порт 80).
  • Минимальные знания консоли AWS (EC2, VPC, Security Groups).

Краткий план действий

  1. Войти в консоль AWS.
  2. Перейти в EC2 → Load Balancers.
  3. Создать Application Load Balancer (интернет-ориентированный).
  4. Настроить слушатель (Listener) для HTTP/80 или HTTPS/443.
  5. Создать target group и зарегистрировать EC2-инстансы.
  6. Дождаться состояния active, скопировать DNS и проверить доступ.

Подготовка к созданию ALB — чек-лист

  • Убедиться, что EC2-инстансы находятся в той же VPC и имеют запущенный Apache.
  • Инстансы находятся в приватных или публичных подсетях (для доступа через интернет ALB должен быть в публичных подсетях).
  • Security Group инстансов разрешает входящий трафик с порта 80/443 от ALB (обычно по CIDR или Security Group ALB).
  • Есть минимум 2 Availability Zone для высокой доступности.

Шаги: вход в AWS и навигация

  1. Перейдите на страницу входа в AWS и авторизуйтесь.

    Перейдите по ссылке для входа и введите свои учётные данные.

Страница входа AWS с формой ввода учётных данных

После успешного входа откроется консоль с перечнем сервисов.

Создание Application Load Balancer

  1. В консоли AWS выберите «Services» → в поиске введите «EC2» → откройте EC2 Dashboard.

Меню создания Application Load Balancer в EC2

  1. На боковой панели EC2 выберите Load Balancers.

Раздел Load Balancer в консоли EC2

  1. Нажмите Create Load Balancer.

Кнопка создания Load Balancer в EC2

  1. Выберите Application Load Balancer и нажмите Create.

Выбор типа балансировщика — Application Load Balancer

Конфигурация основного блока

  • Введите имя балансировщика (имя должно быть уникальным в регионе).
  • Scheme: выберите Internet-facing, чтобы балансировщик принимал трафик из интернета.
  • Network mapping: выберите VPC и минимум две подсети в разных Availability Zone.

Форма ввода имени и схемы Load Balancer

Примечание: при выборе HTTP вместо HTTPS консоль покажет предупреждение. Для тестовой среды это допустимо, в продакшене используйте HTTPS и настроенные сертификаты.

Предупреждение о небезопасном соединении HTTP

Настройка безопасности (Security Group)

  • Можно создать новую Security Group для ALB, которая разрешит входящие соединения на выбранный порт (обычно 80 и/или 443).
  • Либо выбрать существующую группу.

Конфигурация правил Security Group для ALB

Важно: Security Group инстансов должна разрешать входящий трафик от Security Group ALB (рекомендуется правило типа «Allow from security-group-id»), а не открывать порт 80/443 всем.

Выбор или создание Security Group для балансировщика

Конфигурация маршрутизации и target group

  • Создайте target group: укажите имя, protocol (HTTP) и порт (80), выберите тип Target type: instance (или ip, если регистрируете IP вне VPC).
  • Health checks: по умолчанию HTTP на путь /, можно изменить на /index.html или на конкретный путь приложения.

Настройка правил маршрутизации и target group

Регистрация целей (targets)

  • Выберите один или несколько EC2-инстансов с запущенным Apache и нажмите Add to registered.
  • Нажмите Next: Review и затем Create.

Регистрация EC2-инстансов в target group

Просмотр и проверка

  • По завершении нажмите Close и вернитесь к списку Load Balancers.
  • Дождитесь, пока состояние Load Balancer станет active и статусы целей — healthy.

Обзор настроек перед созданием Load Balancer

Успешно созданный Load Balancer в списке

  • Скопируйте DNS-имя из вкладки Description и откройте его в браузере. Через несколько минут health checks должны подтвердить работоспособность, и вы увидите страницу Apache.

Список балансировщиков нагрузки с DNS именем

Тестовая страница Apache, отдаваемая инстансом за балансировщиком

Критерии приёмки

  • Load Balancer в состоянии active.
  • Минимум 2 registered targets со статусом healthy.
  • Доступ к приложению по DNS балансировщика возвращает ожидаемую страницу или ответ 200.
  • Логи доступа и health checks проверены на отсутствие ошибок.

Рекомендации по безопасности и продакшену

  • Настройте HTTPS: используйте AWS Certificate Manager (ACM) для управления сертификатами и добавьте слушатель HTTPS (443).
  • Отключите прямой доступ к портам приложения из интернета: инстансы должны принимать трафик только от ALB.
  • Включите логирование доступа ALB (Access Logs) в S3 для аудита.
  • Настройте WAF (Web Application Firewall) при необходимости для защиты от OWASP-угроз.

Типичные ошибки и способы устранения

  • Неправильные security group: убедитесь, что Security Group инстансов принимает трафик от Security Group ALB.
  • Health checks возвращают unhealthy: проверьте путь health check и ответ сервера (HTTP 200). Проверьте firewall/iptables на инстансах.
  • DNS не отвечает: убедитесь, что ALB в состоянии active и нет проблем с целевыми подсетями или маршрутами.

Роли и чек-листы

Администратор AWS (DevOps):

  • Проверить VPC и подсети.
  • Создать/проверить Security Groups.
  • Настроить ALB и target groups.
  • Включить логирование и мониторинг.

Разработчик приложения:

  • Убедиться, что приложение слушает правильный порт и возвращает корректные ответы для health check.
  • Проверить, что статические ресурсы доступны и нет ограничений CORS/Host.

Короткая методология развертывания (mini-methodology)

  1. Подготовка инфраструктуры: VPC, подсети, security groups.
  2. Развёртывание приложения на двух и более инстансах.
  3. Создание ALB и target group.
  4. Регистрация инстансов и тестирование health checks.
  5. Переконфигурация на HTTPS и закрытие избыточных правил доступа.

Глоссарий — 1 строка

  • ALB: Application Load Balancer — балансировщик нагрузки уровня приложения (L7).
  • Target group: группа целей (EC2 или IP), на которые ALB пересылает трафик.
  • Listener: слушатель на порту (HTTP/HTTPS), принимающий входящие запросы.

Часто задаваемые вопросы

Как ALB отличается от Classic Load Balancer?

ALB работает на уровне приложения (L7) и поддерживает маршрутизацию по URL/Host и более гибкие правила; Classic — устаревший, для простых L4/L7 сценариев.

Можно ли регистрировать цели по IP-адресу вне VPC?

Да, если выбрать тип target group «ip», можно добавить IP-адреса вне VPC при корректной сетевой доступности.

Заключение

Мы прошли полный путь: вход в AWS, создание Application Load Balancer, настройка security group и target group, регистрация EC2-инстансов с Apache и проверка доступа по DNS. Для тестовой среды достаточно HTTP, но в продакшене обязательно настройте HTTPS, логи и WAF для безопасности. Следуйте чек-листам и критериям приёмки для корректного развёртывания.

Дополнительные шаги при подготовке к продакшену: автоматизация создания ALB через Terraform/CloudFormation, мониторинг метрик (TargetResponseTime, RequestCount, HTTPCode_Target_5XX) и настройка alerting в CloudWatch.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Herodotus: механизм и защита Android‑трояна
Кибербезопасность

Herodotus: механизм и защита Android‑трояна

Включить новое меню «Пуск» в Windows 11
Windows руководство

Включить новое меню «Пуск» в Windows 11

Панель полей сводной таблицы в Excel — руководство
Excel

Панель полей сводной таблицы в Excel — руководство

Включить новое меню «Пуск» в Windows 11
Windows 11

Включить новое меню «Пуск» в Windows 11

Дубликаты Диспетчера задач в Windows 11 — как исправить
Windows

Дубликаты Диспетчера задач в Windows 11 — как исправить

История просмотров Reels в Instagram — как найти
Instagram

История просмотров Reels в Instagram — как найти