Назад | Перейти на главную страницу

Предотвратить остановку машины EC2, отключение питания, выключение

Серверы EC2 Ubuntu стирают все содержимое диска при выключении. После досадной аварии я решил запретить запуск командной строки. halt, poweroff и shutdown.

  1. Как лучше всего это сделать? Я думал о переименовании этих команд (на /sbin) на что-то вроде HALT_RENAMED___ERASES_ALL_DISK_CONTENTS.

  2. Есть ли какие-либо файлы, кроме трех, перечисленных выше, которые необходимо обработать?

  3. Я заметил это halt и poweroff просто ссылки на reboot. Следует ли переименовать и перезагрузку?

Адам

Если вы используете экземпляры EC2 и у вас есть данные, которые необходимо сохранять, вы должны использовать тома EBS для хранения данных. В противном случае вы несете ответственность за создание процесса для периодической загрузки в S3 или за другую стратегию резервного копирования для восстановления после перезагрузки. У меня работает около десятка инстансов EC2, и я использую комбинацию обеих стратегий.

Диск, установленный для / на инстансах EC2, предназначен для очистки, когда он полностью отключен, что и является halt, shutdown и poweroff делать. Диск останется во время перезагрузки, но когда экземпляр будет полностью отключен, он будет уничтожен, что в точности соответствует тому, что Amazon сообщает вам в условиях использования EC2 и почему они рекомендуют EBS, если это необходимо.

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

Я настоятельно рекомендую использовать экземпляры на основе EBS и периодически создавать моментальные снимки вашего тома EBS. В случае потенциальной проблемы с оборудованием экземпляры на основе EBS могут быть остановлены / запущены (что приводит к их запуску на другом оборудовании, если вам не очень повезло)

Я рекомендую делать снимки, потому что тома EBS не обладают такой же избыточностью, как S3. Они более надежны, чем обычный жесткий диск, но у меня случались отказы томов EBS, и мои моментальные снимки спасли положение.

ec2-modify-instance-attribute --instance -hibited-shutdown-behavior stop не работает с экземплярами, отличными от EBS.

Вы можете изменить поведение при выключении:

ec2-run-instances                           \
  --instance-initiated-shutdown-behavior stop \

Подробнее об этом читайте здесь: http://alestic.com/2010/01/ec2-instance-locking

Выхода нет.

СЕРЬЕЗНО - вы не должны полагаться на сервер EC2 для сохранения состояния. Это хорошо задокументировано.

Вы НЕ МОЖЕТЕ остановить выключение виртуальной машины. Что делать, если сервер выйдет из строя? Этого не случится - уже произошло на Amazon. Системы просто рушатся.

В основном вы здесь охотитесь на гсотов. Вы не можете остановить выключение виртуальной машины.