Вот сценарий, за балансировщиком нагрузки стоит несколько экземпляров EC2. Когда движение прекращается, SCALE_DOWN
политика запускается по сигналу тревоги CloudWatch. Я бы хотел, чтобы экземпляр, который будет завершен, или отдельный сервер в целом, имел возможность запускать быстрый скрипт, который будет выполнять несколько команд, чтобы гарантировать, что все данные были переданы.
Мой первоначальный вопрос заключался в том, как я могу отправить уведомление, когда экземпляр будет остановлен автоматическим масштабированием, SCALE_DOWN
политика. Но потом я увидел этот вопрос Amazon EC2 уведомляет инстанс о завершении его работы службой автомасштабирования.
Если уведомление отправлено, сколько времени осталось до фактического завершения работы экземпляра? Есть ли какие-то параметры, которые нужно указать на этот раз?
Было бы лучше уведомить экземпляр о том, что он больше не нужен, и заставить экземпляр прекратить работу после того, как он завершит выполнение последнего скрипта?
Или я превращаю это в большую проблему, чем есть на самом деле, и есть гораздо более простое решение?
Когда экземпляр EC2 отключается, он выполняет сценарии, прикрепленные к этому процессу. Следовательно, у вас есть хороший шанс, что ваш скрипт будет выполнен до фактического завершения работы экземпляра.
Однако нет гарантии, что сценарий будет выполнен, и ваш процесс должен предполагать, что некоторые из его экземпляров будут завершены без его выполнения.
Есть много причин для того, чтобы завершение было «неудачным», и, учитывая его, любой временной порог не может изменить этот факт, возможно, уменьшить его частоту.