В AWS Application Load Balancer (ALB) розподіляє вхідний трафік між кількома інстансами EC2, щоб забезпечити високу доступність, надійність та кращу масштабованість для вашого додатку. Load Balancer допомагає управляти трафіком, маршрутизуючи запити до ресурсів на бекенді на основі вмісту, шляху або імені хоста.
У цьому посібнику ми створимо ALB і зареєструємо 3 інстанси EC2 у Цільовій групі, які будуть обслуговуватися Load Balancer.
Крок 1: Запуск EC2 інстансів
Перейдіть на панель EC2: Увійдіть до AWS Management Console, перейдіть до EC2 і запустіть 3 EC2 інстанси, якщо у вас їх ще немає.
- Ви можете використовувати стандартний образ Amazon Linux 2 AMI або будь-який інший образ за вашим вибором.
- Переконайтеся, що кожен EC2 інстанс має security group з відповідними правилами (наприклад, доступ по HTTP або HTTPS).
Налаштування Security Group для EC2 інстансів:
- Дозвольте вхідний трафік на порт 80 (HTTP) або 443 (HTTPS) для веб-додатків.
- Load Balancer буде обробляти вхідний трафік і направляти його до цих інстансів.
Крок 2: Створення Цільової групи
Цільова група використовується ALB для управління тим, які інстанси EC2 отримають трафік.
Перейдіть на панель EC2 і натисніть на Target Groups в розділі Load Balancing.
Натисніть "Create Target Group":
- Target type: Виберіть Instances.
- Protocol: Виберіть HTTP або HTTPS в залежності від потреб вашого додатку.
- Port: Виберіть відповідний порт, зазвичай 80 для HTTP або 443 для HTTPS.
- VPC: Виберіть той самий VPC, де знаходяться ваші EC2 інстанси.
Налаштування Health Checks:
- Встановіть Health check path (наприклад,
/healthcheck
) або використовуйте стандартні налаштування для перевірки стану інстансів EC2. - Переконайтеся, що інстанси коректно реагують на цей health check, щоб Load Balancer міг направляти трафік до них.
Реєстрація EC2 інстансів:
- Виберіть 3 EC2 інстанси, які ви хочете зареєструвати в цій Цільовій групі.
- Виберіть порт інстанса, залежно від конфігурації вашого додатку (зазвичай порт 80 або 443).
Створення Цільової групи: Після налаштування всіх параметрів натисніть Create, щоб створити Цільову групу.
Крок 3: Створення Application Load Balancer
Перейдіть до розділу Load Balancers на панелі EC2 і натисніть Create Load Balancer.
Виберіть Application Load Balancer:
- Scheme: Виберіть internet-facing, якщо ваш додаток має бути доступний з Інтернету, або internal для приватної мережі.
- IP address type: Виберіть ipv4.
- Listeners: За замовчуванням вибрано HTTP (порт 80).
Додайте HTTPS (порт 443), якщо це необхідно.
Налаштування безпеки (для HTTPS):
- Якщо ви використовуєте HTTPS, створіть або виберіть SSL сертифікат за допомогою AWS Certificate Manager (ACM).
Налаштування Security Groups:
- Виберіть або створіть security group, яка дозволяє вхідний трафік по HTTP (80) або HTTPS (443).
- Переконайтеся, що security group дозволяє ALB доступ до інстансів EC2.
Налаштування маршрутизації:
- Виберіть Target Group, створену на Кроці 2.
- Встановіть Default action на перенаправлення трафіку до вашої цільової групи.
- Реєстрація цілей: Цей крок пропускається, оскільки EC2 інстанси вже додані до цільової групи на Кроці 2.
- Огляд і створення: Перевірте всі налаштування та натисніть Create, щоб запустити Load Balancer.
Крок 4: Перевірка налаштувань
Перевірте DNS Load Balancer: Після створення ALB ви отримаєте DNS-ім’я (наприклад, my-alb-12345678.us-west-2.elb.amazonaws.com
).
Доступ до додатку:
- Відкрийте браузер і введіть DNS-ім’я ALB.
- Трафік тепер має бути маршрутизований до одного з 3 EC2 інстансів у вашій цільовій групі.
Перевірка високої доступності:
- Зупиніть або термінуєте один із EC2 інстансів.
- Оновіть сторінку у браузері, щоб переконатися, що трафік все ще маршрутизується до залишкових здорових інстансів.
Перекладено з: How to Create an Application Load Balancer for 3 EC2 Instances using Target Group?