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

Как настроить icinga / nagios для оповещения по смс?

Я знаю шлюз sms для своего оператора сотовой связи, поэтому могу просто отправить ему электронное письмо.

Я ищу примеры записей в файлах contacts.cfg и commands.cfg, специфичных для мобильных устройств.

Использование сторонней службы SMS или (что еще лучше) использование устройства GSM, как предлагает Крейг, будет намного более надежным / надежным.

Если вы твердо настроены использовать шлюз электронной почты-> SMS провайдера, вы можете использовать упрощенные контактные команды, например:

define command {
    command_name    notify-host-by-sms
    command_line    /usr/bin/printf "%b" "$NOTIFICATIONTYPE$\n$HOSTNAME$ is $HOSTSTATE$\n$HOSTOUTPUT$\n" | /usr/bin/mail -s "[Nagios] ($HOSTNAME$ $HOSTSTATE$)" $CONTACTEMAIL$

}

define command {
    command_name    notify-service-by-sms
    command_line    /usr/bin/printf "%b" "$NOTIFICATIONTYPE$\n$SERVICEDESC$ ($HOSTNAME$) is $SERVICESTATE$\n$SERVICEOUTPUT$" | /usr/bin/mail -s "[Nagios] ($HOSTNAME$/$SERVICEDESC$)" $CONTACTEMAIL$

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

В contacts_nagios2.cfg:

define contactgroup{
        contactgroup_name       admins
        alias                   Nagios Administrators
        members                 user
}
define contact{
        contact_name                    name
        alias                           name
        service_notification_period     24x7
        host_notification_period        24x7
        service_notification_options    w,u,c,r
        host_notification_options       d,r
        service_notification_commands   notify-by-sms
        host_notification_commands      host-notify-by-sms
        email                           mail
        pager                          MOBILENUMBER
}

И в commands.cfg

define command{
       command_name notify-by-sms
       command_line script-to-sms-service
}
define command{
       command_name host-notify-by-sms
       command_line script-to-sms-service
}

Первый ответ сделает то, что вам нужно.

Вы можете отправлять SMS-сообщения через службу SMS, отправлять их по электронной почте сотового оператора на SMS-адреса или использовать локальный SMS-сервер. Мы сделали последнее. По этой ссылке вы узнаете, как это сделать:

http://www.linuxjournal.com/magazine/using-sms-server-provide-robust-alerting-service-nagios

Это работает уже 1,5 года. Очень надежен и не зависит от почтовых серверов или сторонних сервисов.

Если вам нужно что-то, что можно использовать прямо из коробки, вы можете взглянуть на SMSEagle

Это аппаратный шлюз для смс. Их преимущество в том, что устройство находится рядом с вашей инфраструктурой, поэтому при сбое подключения к Интернету вы все равно можете отправлять SMS-оповещения.

Они готовы плагин для Nagios - интеграция занимает около 5 минут.