Самостоятельная остановка EC2 после завершения задачи? - PullRequest
0 голосов
/ 12 июня 2019

У меня лямбда, запускающая EC2 ежечасно. Операционная система (windows) на EC2 запускает скрипт при запуске. Задача может занять от 1 минуты до 45 минут. Я бы хотел, чтобы EC2 остановился после запуска скрипта.

Я могу придумать, как этого добиться. Я мог бы установить aws cli на самом EC2 и запустить что-то вроде aws ec2 stop-instances --instance-ids i-07c1849fe7abcdef. Это так странно. Есть ли лучший способ?

Примечание

Для полной ясности я не хочу просто устанавливать таймер для экземпляра. Скажем, я установил 45-минутный таймер, я бы заплатил за 45 минут, даже если задача занимает всего 3 минуты. Я бы хотел, чтобы экземпляр был остановлен сразу после запуска сценария, независимо от того, сколько времени потребовалось для выполнения сценария.

1 Ответ

1 голос
/ 12 июня 2019

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

В Linux это будет:

sudo shutdown now -h

(-h означает останов, что приведет к отключению питания. Если не включено, операционная система остановится, но экземпляр продолжит работу.)

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

  • Остановить экземпляр (звучит как то, что вы ищете)
  • Завершить экземпляр (хорошо, если новыйэкземпляр запускается каждый раз)

Shutdown Behavior

Для этого метода разрешения IAM не требуются.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...