Тревога CloudWatch для пределов экземпляра сервиса Amazon EC2
Можно ли установить оповещение CloudWatch, когда мы приближаемся к пределу количества экземпляров EC2, которые в настоящее время разрешены для нашей учетной записи?
Например, если предел для экземпляров EC2 в настоящее время равен 250, когда номер экземпляра 240 предоставлен, я хочу, чтобы сработала сигнализация.
3 ответа
Да, вы можете сделать это с помощью функции Lambda, метрики CloudWatch и будильника CloudWatch.
Ваш сигнал тревоги будет настроен на сигнализацию по метрике, если она превышает некоторый порог (порог, являющийся пределом вашего экземпляра).
Ваша лямбда-функция будет выполняться по расписанию, например, каждые 5 минут, и будет выполнять следующее:
Используйте ec2: DescribeAccountAttributes API для получения лимита экземпляра учетной записи и cloudwatch:DescribeAlarms для получения текущего порога тревоги. Если они различаются, пороговое значение сигнала тревоги должно быть обновлено до лимита экземпляра с помощью API cloudWatch: PutMetricAlarm.
Используйте API-интерфейс ec2: DescribeInstances, подсчитайте количество запущенных экземпляров и опубликуйте значение в настраиваемой метрике CloudWatch с помощью CloudWatch: API PutMetricData.
Если значение, опубликованное в метрике, превысит порог тревоги, он сработает. Лямбда-функция будет поддерживать пороговое значение тревоги, настроенное на пределе количества экземпляров, и будет публиковать точки данных в метрике на основе количества запущенных экземпляров.
Если вы читаете это в 2023 году, сейчас это намного проще. Вы можете создать сигнал тревоги CloudWatch непосредственно из консоли Service Quotas.
Из сервисных квот и сигналов тревоги Amazon CloudWatch :
Чтобы создать сигнал CloudWatch для квоты
- Войдите в консоль управления AWS и откройте консоль сервисных квот по адресу https://console.aws.amazon.com/servicequotas/home.
- На панели навигации выберите Сервисы AWS , а затем выберите сервис.
- Выберите квоту, которая поддерживает сигналы тревоги CloudWatch. Если вы активно используете квоту, под описанием квоты отображается использование. Раздел сигналов тревоги CloudWatch появится в нижней части страницы.
- В тревогах Amazon CloudWatch выберите «Создать» .
- Для параметра «Порог тревоги» выберите порог.
- В поле «Имя будильника» введите имя будильника. Это имя должно быть уникальным в пределах учетной записи AWS.
- Выберите Создать .
- Чтобы добавить уведомление к сигналу тревоги CloudWatch, см. https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ConsoleAlarms.html в Руководстве пользователя Amazon CloudWatch .
Если у вас есть группа автоматического масштабирования, которая запускает новые экземпляры, и вы хотите управлять ею, вы можете использовать GroupInServiceInstances
который дает вам количество экземпляров, работающих как часть ASG. Узнайте больше здесь.