Zabbix и бесплатные SMS
Когда в Google Календаре появилась возможность получать бесплатные SMS уведомления, думаю все разработчики подумали о том, что это можно прикрутить к своим скриптам. Многие так и не нашли времени и сил этим заняться, поэтому предоставляю PHP скрипт для бесплатной отправки SMS себе, а для пущей пользы прикручу его к системе мониторинга Zabbix. Надеюсь после этих слов все системные администраторы подумали о том, как будет здорово получать SMS когда из сети выпадает сервер, кто-то наступает на сетевой провод, перезагружается роутер или повышается температура в серверной.
Версия для Zabbix
Эта версия предназначена для SMS уведомления при появлении события посредством срабатывания триггера. Zabbix позволяет настраивать фильтрацию по степени важности (например, не будет отправлять информационные события).1.Настройка аккаунта Google
- Заходим Календарь > Настройки > Настройка для мобильных устройств.
- Указываем свой номер телефона, подтверждаем, получив тестовую SMS.
2. Установка и настройка скрипта
- Подключаемся к серверу Zabbix через SSH или WinSCP.
- Определяем местонахождение папки alertscripts из возможных вариантов:
- /usr/local/share/zabbix/alertscripts
- /etc/zabbix/alertscripts
- /home/zabbix/bin/
- Распаковываем http://mamaev.pro/zabbix/fsms_zabbix.zip [~ 6 Мб] в папку alertscripts.
- На все содержимое, рекомендую поставить группу и овнера «zabbix» и права 0755.
- В файле zabbix_fsms.php указываем:
- часовое пояс
- место(не обязательно)
- номер телефона
- логин и пароль от Gmail.com
- Для проверки можно консольно выполнить скрипт:
/usr/local/share/zabbix/alertscripts/zabbix_fsms 795112345678 Console Test Ok
Где 795112345678 — ваш номер телефона, а /usr/local/share/zabbix/alertscripts/ — найденный на втором шаге путь до alertscripts. В результате должно прийти SMS.
3. Настройка Zabbix
- В Zabbix заходим Administration > Media types > Create media type.
- Указываем
жмём Save. - Заходим Profile > Media > Add.
- Указываем Type: FSMS; SendTo: ваш номер мобильного; When active и Use if severity по вкусу.
- Настройка завершена! Для проверки можно
выключить пару маршрутизаторовсоздать триггер, который сработает через минуту, например "{имя_хоста:agent.ping.nodata(1m)}=0".
Версия для Веб-разработчиков
Отличие от Zabbix версии: используется как обычный скрипт, а не консольный, код причесан для разработчиков. http://mamaev.pro/zabbix/fsms_webdev.zip [5.8 Мб]Скрипт разработан с использованием Zend Framework.
Внимание, это моя первая статья, с удовольствием принимаю все замечания.
UPD: У пользователя br0ziliy используется Python для реализации бесплатных SMS через Google Calendar, смотрим SMS-уведомления из Nagios малой кровью.