Запуск и остановка экземпляра AWS EC2 - PullRequest
0 голосов
/ 12 марта 2019

У меня есть требование, по которому мне нужно ежедневно запускать и останавливать инстансы AWS EC2 (в группе Autoscaling).Это в основном для предотвращения затрат.Я создал скрипт Python для запуска и остановки экземпляров EC2, но он не работает должным образом, поскольку экземпляры EC2 находятся в группе автоматического масштабирования.
Кто-нибудь знает какое-либо решение для этого?

Ответы [ 2 ]

1 голос
/ 13 марта 2019

Группа автоматического масштабирования Amazon EC2 предназначена для автоматического масштабирования , чтобы можно было добавлять дополнительные экземпляры при более высокой рабочей нагрузке и удалять экземпляры при меньшей рабочей нагрузке.

Автоматическое масштабирование также хорошо для обеспечения работоспособности приложения. Если экземпляр в группе автоматического масштабирования не проходит проверку работоспособности, он будет автоматически завершен. Автоматическое масштабирование запустит новый экземпляр для его замены.

Похоже, что ваше требование состоит в том, чтобы сократить расходы, когда приложение не используется. Это можно сделать, создав политику масштабирования , которая определяет, когда автоматическое масштабирование должно добавлять и удалять экземпляры, например:

  • Добавить экземпляр, когда среднее использование ЦП превышает 65% (во всех случаях) в течение 15-минутного периода
  • Удалить экземпляр, когда среднее использование ЦП ниже 30% в течение 30-минутного периода

(Обратите внимание, что обычно хорошо быстро масштабировать, но медленно масштабировать.)

Используя такие политики масштабирования или даже автоматическое отслеживание целей , автоматическое масштабирование позаботится о вас.

Если, с другой стороны, вы хотите управлять группой автоматического масштабирования вручную , вы можете добавлять и удалять экземпляры, используя:

  • set_desired_capacity(), чтобы сообщить автоматическому масштабированию, сколько экземпляров вы хотите (и позволить запускать / завершать экземпляры для совпадения)
  • terminate_instance_in_auto_scaling_group() для удаления определенных экземпляров из группы автоматического масштабирования

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

0 голосов
/ 12 марта 2019

Что вам нужно сделать, это автоматизировать параметры автоматического масштабирования для нужных экземпляров, минимальных и максимальных экземпляров. В идеале вы хотите изменить желаемое количество экземпляров. Это приведет к тому, что автоматическое масштабирование прекратит избыточные экземпляры, чтобы удовлетворить желаемое количество экземпляров.

...