Рейтинг:1

Как установить самоуничтожение или максимальное время безотказной работы в AWS?

флаг ro

Ситуация

У нас есть учетная запись AWS для песочницы, чтобы попробовать что-то новое. Это не для производства, просто для того, чтобы поиграть со всеми игрушками, которые предоставляет AWS. Мы хотим призвать всех исследовать и учиться.

У нас есть много учетных записей AWS в нашей собственности, включая, помимо прочего,

  • песочница
  • разработка
  • тестовое задание
  • производство

Для нас важна финансовая и экологическая ответственность.

Требование

  • Должен
    • автоматически уничтожать все в учетной записи песочницы.
    • быть способным работать только на это конкретный аккаунт.
  • Должен
    • уничтожить экземпляр после Икс часы.
  • Мог

Возможные решения

aws-nuke

Я видел aws-nuke. Если бы мы запускали это в полночь по средам и воскресеньям, все экземпляры закрывались бы. Это звучит как отличное решение, однако это также несколько опасно, так как это может привести к завершению экземпляров на других учетных записях по моей ошибке. В настоящее время он также работает со списком блокировки, а не с явным списком разрешений, что является еще одной потенциальной проблемой безопасности. я зарегистрировался aws-nuke#751 чтобы решить эту проблему.

Политика максимального времени безотказной работы

Другой метод, который я изучаю, заключается в использовании политики (IAM?), чтобы установить максимальное время безотказной работы для всего. Я чувствую, что это с меньшей вероятностью просочится на другие наши учетные записи, а также может быть более нюансированным. Я не уверен,

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

Буду очень признателен за любые указатели.

Рейтинг:0
флаг cn

У одного предыдущего работодателя кто-то написал лямбда-функцию, которая выводит список всех запущенных экземпляров и останавливает их каждую ночь в 19:00, если у них нет определенного тега. Это был довольно простой и эффективный способ справиться с этим. питон бото3 библиотеки довольно просты в использовании.

Лямбда была развернута в Организации и использовала роль для нескольких учетных записей, но вы могли бы так же легко развернуть ее через StackSet во всех учетных записях организации и настроить ее только для экземпляров этих учетных записей.

флаг ro
Хм, я надеялся избежать использования лямбды, так как запуск может быть длинным, если создается много экземпляров.
флаг cn
Всегда можно разбить его, чтобы одна лямбда сгенерировала список -> SQS -> другие. Я ожидаю, что вызов API для остановки экземпляра будет быстрым. Другой вариант — это точечный экземпляр, который запускает тот же код?

Ответить или комментировать

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