Лямбда-функция AWS для автоматического масштабирования

Я создаю решение для аварийного восстановления в AWS. Для второго (резервного) региона я хочу иметь только 1 экземпляр EC2, чтобы минимизировать затраты. В случае катастрофы я хотел бы знать, можно ли написать лямбда-функцию во второй области, которая увеличивает желаемую емкость группы автоматического масштабирования до некоторого числа.

Для этого я могу подписаться на эту функцию в теме SNS о тревоге проверки работоспособности.

Я хотел бы знать, есть ли API для автоматического масштабирования группы ec2 из Lambda и какие роли / разрешения необходимы?


person Saurabh Kumar    schedule 25.07.2020    source источник


Ответы (1)


Да, это вполне возможно.

В Boto3 вы можете использовать update_autoscaling_group и укажите MinSize, MaxSize и DesiredCapacity. Сделав это, вы сможете настроить значения в соответствии с вашими ожиданиями.

В качестве альтернативы вы можете иметь минимальную емкость как 1 и максимальную емкость, какой бы она ни была, если сигналы тревоги никогда не сработают, она никогда не будет масштабироваться. Затем вы можете просто вызвать set_desired_capacity, чтобы установить количество экземпляров на определенное количество.

Разрешения для этих параметров следующие:

  • autoscaling:SetDesiredCapacity
  • autoscaling:UpdateAutoScalingGroup
person Chris Williams    schedule 25.07.2020