Я запускаю экземпляр ec2 с сервером ubuntu, и иногда кажется, что он выключен. Можно ли отправить уведомление по электронной почте, если сервер перейдет на уровень запуска 0? И как?
Вероятно, лучшая альтернатива, которая будет обрабатывать случаи внешнего отключения (сбой сервера, нарушение работы службы, паника ядра и т. Д.), - это использовать Amazon CloudWatch и Simple Notification Services для отправки вам сигналов тревоги.
http://aws.typepad.com/aws/2010/12/amazon-cloudwatch-alarms.html
Просто установите свои пороги (в данном случае, вероятно, INSUFFICIENT_DATA) и место, куда вы хотите направить оповещение (в вашем случае, вероятно, по электронной почте), а остальное пусть Amazon обработает.
Для ящиков Linux в целом найдите уровень запуска по умолчанию, выполнив
grep id /etc/inittab
и глядя на второе из полей, разделенных двоеточиями. Обычно это 3 или 5, причем первое чаще встречается на серверах.
Если это 3, загляните в /etc/rc3.d
в скриптах, которые запускаются Knn
, где nn - двузначное число. Обычно они запускаются в возрастающем числовом порядке, когда сервер покидает этот уровень выполнения.
Вы захотите написать что-нибудь короткое и милое и положить это туда для начала, скажем K01shutmail
. Вскоре после этого сервер отключит ваш MTA, поэтому у вас будет совсем немного времени, чтобы получить это письмо; не усложняйте свой сценарий.
Это по-прежнему поможет вам только в том случае, если сервер завершит работу корректно, и если вы обнаружите, что он отключился без ясной причины, это может быть не так. Если для вас важно наличие коробки, я бы лично рекомендовал поставить небольшой нагиос установка на дешевом сервере с общим хостингом в другом месте, и пусть он контролирует ваш блок ec2.