Политика автомасштабирования EC2 для прекращения работы экземпляров, если они не нужны, но до 1 часа
У меня есть настроенные политики EC2 Autoscale для мониторов CPU, и они работают хорошо.
У меня есть случайные всплески, которые запускают автомасштабирование, и добавляются другие серверы.
Если на серверах наблюдается всплеск продолжительностью 30 минут и добавлены еще два экземпляра, чтобы помочь с текущими заданиями, я хотел бы сохранить их в течение 59 минут (так как я заплатил за 1 час) вместо того, чтобы их завершать при уменьшении срабатывает.
Поэтому в основном я хочу переместить чеки на отметку в один час от начала и посмотреть, нужны ли они по-прежнему, иначе отключиться. Должен ли я играть с перезарядкой или льготным периодом?
Вот текущие правила (аварийные сигналы не показаны), как вы можете видеть, я использую новый OldestInstance
Политика прекращения
as-create-auto-scaling-group MyASGroup \
--availability-zones us-east-1c \
--launch-configuration MyLaunchConfig \
--grace-period 300 \
--health-check-type ELB \
--min-size 1 \
--max-size 3 \
--desired-capacity 1 \
--load-balancers MyELB \
--termination-policies "OldestInstance" \
--tag ...
as-put-scaling-policy ScaleUp \
--type ChangeInCapacity \
--auto-scaling-group MyASGroup \
--adjustment=1 \
--cooldown 300
as-put-scaling-policy ScaleDown \
--type ChangeInCapacity \
--auto-scaling-group MyASGroup \
--adjustment=-1 \
--cooldown 300
Возможна ли такая вещь? Благодарю.
2 ответа
Вы должны настроить период перезарядки для политики ScaleDown, чтобы ваши экземпляры работали дольше. Льготный период должен быть установлен на количество времени, необходимое для ускорения вашего экземпляра, поэтому не нужно его настраивать (если ваши экземпляры работают менее чем за 300 секунд). Как только у вас есть свои политики, вы можете проверить их, используя команду as-execute-policy с параметром --honor-cooldown. Это позволит вам убедиться, что время перезарядки работает так, как вы хотите, не дожидаясь выполнения условий загрузки.
Другое решение, которое вы могли бы рассмотреть, - изменить Политику завершения по умолчанию вашей ASG на "Ближайший час экземпляра". Это все еще оставляет некоторый шанс, но дает вам ВСЕ экземпляры в вашей ASG, а не только те, которые были запущены в последнее время, и в зависимости от того, как это работает, это может сэкономить вам деньги по сравнению с просто выходом из экземпляров. дольше, потому что нет гарантии, что ASG прекратит работу этих новых экземпляров, особенно когда наступит время масштабирования. Фактически, во время, когда ASG находилась на расширенной мощности, некоторые из исходных экземпляров могли завершить еще один час экземпляра.