В настоящее время у меня есть лямбда-функция, которая останавливает мои экземпляры EC2 (4 виртуальных сервера), и я создал расписание с помощью Cloudwatch, чтобы запустить эту лямбда-функцию, чтобы остановить мои серверы в 18:30 с понедельника по пятницу. Эта часть прекрасно работает.
Однако, если я запускаю пакет анализа для конкретного приложения на своих серверах, например, в 15:00, иногда приложение, выполняющее анализ, занимает 4-5 часов, что означает, что CloudWatch по существу остановит серверы в 18:30 в середина процесса анализа. Есть ли способ встроить исключение, чтобы проверить, превышает ли загрузка ЦП на серверах 10%, чтобы отложить событие cloudwatch?
Я попытался создать тревожное событие в CloudWatch для выключения определенных серверов EC2, если показатель использования ЦП <10%, но это по существу отключило бы их в течение рабочего дня, если бы они не использовались, а это не то, что мне нужно.
В конечном счете, я хотел бы иметь возможность написать сценарий (лямбда-функцию), который будет проверять, не ниже ли загрузка ЦП с 18:30 с понедельника по пятницу 10%, если это так, то остановите серверы. Если нет, то проверяйте каждый час. На этом этапе я хотел бы получить любые предложения, пожалуйста. Заранее спасибо за вашу помощь!





Я считаю, что вы можете определить это с помощью Функции AWS Step Вы можете создать рабочий процесс, который: