Перейти к содержанию

Настройка автоматического масштабирования WAF‑нод

Проверьте наличие необходимых прав

Перед настройкой автоматического масштабирования убедитесь, что ваш аккаунт Amazon AWS имеет одно из следующих прав:

  • AutoScalingFullAccess
  • AutoScalingConsoleFullAccess

Настройка автоматического масштабирования включает в себя следующие шаги:

  1. Создание запускаемого шаблона;

  2. Создание группы автоматического масштабирования.

1. Создание запускаемого шаблона

Запускаемый шаблон (Launch Template) указывает, какой тип инстанса (instance type) необходимо использовать при развертывании образа виртуальной машины Amazon (AMI), и устанавливает общие параметры для виртуальной машины.

Создайте запускаемый шаблон (Launch Template). Для этого выполните следующие действия:

  1. Перейдите на вкладку Launch Templates в дашборде Amazon EC2 и нажмите на кнопку Create launch template.

  2. Введите имя шаблона в поле Launch template name.

  3. Выберите созданный ранее образ виртуальной машины Amazon. Для этого нажмите на ссылку Search for AMI и выберите необходимый образ из каталога My AMIs.

  4. Выберите необходимый тип инстанса, на котором будет запускаться виртуальная машина с WAF‑нодой из списка Instance type.

    Выбор типа инстанса

    Выбирайте тот же тип инстанса, который вы использовали при первоначальной настройке WAF‑ноды, или более мощный.

    Использование менее мощного типа инстанса может привести к проблемам в работе WAF‑ноды.

  5. Выберите имя созданной ранее пары SSH-ключей для доступа к WAF‑ноде из списка Key pair name.

  6. Выберите созданную ранее группу безопасности из списка Security Groups.

  7. Нажмите на кнопку Create launch template.

    Создание запускаемого шаблона

Дождитесь завершения создания запускаемого шаблона.

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

2. Создание группы автоматического масштабирования

Сведения о механизме масштабирования

В этом разделе описывается создание группы автоматического масштабирования с помощью механизма EC2 Autoscaling.

Вы также можете воспользоваться механизмом AWS Autoscaling.

Подробный FAQ от Amazon по механизмам масштабирования доступен по ссылке.

Чтобы создать группу автоматического масштабирования, выполните следующие действия:

  1. Перейдите на вкладку Auto Scaling Groups в дашборде Amazon EC2 и нажмите на кнопку Create Auto Scaling Group.

  2. Выберите опцию «Launch Template», затем выберите из списка созданный ранее запускаемый шаблон и нажмите на кнопку Next Step.

    Создание группы автоматического масштабирования

  3. Введите имя для группы автоматического масштабирования в поле Group name.

  4. Выберите «Latest» версию запускаемого шаблона из выпадающего списка Launch Template Version.

  5. Выберите необходимый тип инстанса, который будет использоваться при масштабировании группы, выбрав одну из опций Fleet Composition.

    Если вы создали шаблон в соответствии с указаниями этого руководства, и был задан тип инстанса, на котором необходимо запускать виртуальные машины, то вы можете использовать эту настройку, выбрав опцию «Adhere to the launch template».

    Выбор типа инстанса

    Вы также можете выбрать опцию «Combine purchase options and instances», если в вашем запускаемом шаблоне не был задан тип инстанса, или же вы хотите выбрать несколько различных типов инстансов для масштабирования.

    Выбирайте тот же тип инстанса, который вы использовали при первоначальной настройке WAF‑ноды, или более мощный тип. Использование менее мощного типа инстанса может привести к проблемам в работе WAF‑ноды.

  6. Задайте начальный размер группы с помощью параметра Group size (например, два инстанса).

  7. Выберите необходимый VPC из выпадающего списка Network.

  8. Выберите необходимые подсети из выпадающего списка Subnets.

    Обеспечьте доступ к Валарм API

    Для корректной работы WAF‑ноды ей требуется доступ к API-серверам Валарм. Адрес зависит от облака, которое вы используете:

    • https://api.wallarm.com:444 для EU‑облака
    • https://api.wallarm.ru:444 для RU‑облака

    Убедитесь, что при настройке группы автоматического масштабирования вы выбрали необходимые VPC и подсети таким образом, чтобы у WAF‑ноды был доступ к серверам Валарм.

    Основные настройки группы масштабирования

  9. Перейдите на страницу Configure scaling policies для настройки политик автоматического масштабирования, нажав на кнопку Next: Configure scaling policies.

  10. Выберите опцию «Use scaling policies to adjust the capacity of this group» для включения масштабирования.

  11. Укажите минимальный и максимальный размер группы автоматического масштабирования.

    Размер группы автоматического масштабирования

    Обратите внимание, что значение минимального размера группы масштабирования может быть меньше, чем заданный на шаге 6 начальный размер группы.

  12. Включите режим пошаговой настройки политик, выбрав опцию «Scale the Auto Scaling group using step or simple scaling policies».

  13. С помощью группы параметров Increase Group Size настройте политику увеличения размера группы:

    Политика увеличения размера группы

    1. При необходимости задайте имя для политики увеличения размера группы с помощью параметра Name.

    2. Укажите, при наступлении какого события необходимо увеличивать размер группы, выбрав событие из выпадающего списка Execute policy when. Если у вас нет созданных ранее событий, нажмите на кнопку Add Alarm, чтобы создать событие.

    3. При создании события вы можете настроить уведомления при наступлении события, имя события и метрику, за изменением которой необходимо следить.

      Необходимые роли для конфигурации уведомлений

      Для конфигурации уведомлений ваш аккаунт Amazon AWS должен иметь роль «AutoScalingNotificationAccessRole».

      Пример

      Вы можете настроить срабатывание события с именем «High CPU utilization» при средней загруженности процессора 60% в течении одного периода в 5 минут в рамках всей группы:

      Пример события

      Доступные стандартные метрики облака Amazon

      • Загрузка процессора в процентах (CPU Utilization).
      • Количество чтений с диска в байтах (Disk Reads).
      • Количество записей на диск в байтах (Disk Writes).
      • Количество операций ввода-вывода на чтение (Disk Read Operations).
      • Количество операций ввода-вывода на запись (Disk Write Operations).
      • Количество входящего сетевого трафика в байтах (Network In).
      • Количество исходящего сетевого трафика в байтах (Network Out).
    4. Создайте событие, нажав на кнопку Create Alarm.

    5. Выберите необходимое действие при срабатывании настроенного события «High‑CPU‑Utilization». Например, можно добавить (Add) один инстанс при срабатывании события.

    6. Если при старте виртуальной машины происходят резкие скачки потребления ресурсов (например, CPU), то при добавлении нового инстанса это может вызвать преждевременное срабатывание события. Чтобы избежать этого, вы можете настроить период «разогрева» добавленного инстанса в секундах с помощью параметра Instances need X seconds to warm up. В течение этого периода значения метрик с запущенного инстанса учитываться не будут.

  14. Аналогичным образом с помощью группы параметров Decrease Group Size настройте политику уменьшения размера группы.

    Политика уменьшения размера группы

  15. При необходимости настройте уведомления и тэги для группы автоматического масштабирования или же перейдите к обзору вносимых изменений, нажав на кнопку Review.

  16. Убедитесь, что все параметры заданы верно, и запустите процесс создания группы автоматического масштабирования, нажав на кнопку Create Auto Scaling group.

При успешном создании группы автоматического масштабирования будет автоматически запущено заданное количество инстансов с WAF‑нодой Валарм.

Вы можете проверить, что группа автоматического масштабирования создана правильно, посмотрев количество запущенных в группе инстансов и сравнив эти данные с количеством подключенных к облаку Валарм WAF‑нод.

Это можно сделать на портале Валарм. Например, если в облаке на данный момент запущено два инстанса с WAF‑нодой, то на вкладке Ноды портала Валарм количество инстансов отобразится для соответствующей облачной ноды:

Проверка статуса группы автоматического масштабирования

Теперь вы можете переходить к созданию и настройке балансировщика нагрузки.