Nagios: оповещение с помощью SMS



Как показал мой скромный опрос, только примерно треть пользователей Nagios используют оповещение при помощи SMS сообщений.

Какой способ оповещения о проблемах вы используете в Nagios?

  • E-Mail (67%, 26 голосов)
  • Смотрю в web-интерфей (41%, 16 голосов)
  • SMS (38%, 15 голосов)
  • Jabber/MSN/ICQ (33%, 13 голосов)
  • Nagstatmon etc. (21%, 8 голосов)

Всего голосов: 39

Loading ... Loading ...

На мой взгляд SMS-оповещение один из самых эффективных способов получения информации о проблемах, т.к. мобильный телефон всегда рядом (в отличии от Jabber/E-Mail) и скорость реагирования на проблемы соответственно будет выше. В этой статье я опишу один из способов создания механизма SMS-оповещений который сам активно использую.

0. Теория


Все приведеные ниже рекомендации основаны на том предположении что вы можете подключить такую услугу мобильных операторов как email-to-SMS/SMS-to-email. Услуга работает так: вы посылаете e-mail на специальный адрес электронной почты, а получаете сообщение уже в виде SMS на ваш телефон.

В Беларуси такие услуги есть:
МТС
Velcom.
life:) вроде не имеет такой услуги

В России:
Есть у МТС`а:
http://www.mts.ru/services/internet/e-mail/, услуга называется немного не так, но позволяет получать почту с rambler.ru и mail.ru.
Так же у них есть услуга E-mail to SMS, но там все зависит от региона (не силен я в Российской географии, сам я из Беларуси).
У Билайна я такой услуги не нашел.
На этом собственно и заканчиваются мои познания в Российских телекомах (отпишитесь в комментах, если вы знаете о подобных услугах у других операторов).

Про Украинские телекомы я и вовсе ничего не знаю :( .

1. Настройка

Итак вы подключили услугу, оператор снял у вас денежку, вы выслали на указанный email тестовое письмо и убедились что «все работает». Дальше как обычно начинается процесс конфигурирования.

Добавляем в конфигурацию Nagios новую команду для отсылки оповещений по SMS, назовем ее notify-by-epager:

define command{
        command_name                    notify-by-epager
        command_line                    /usr/bin/printf "%b" "\n\nType:$NOTIFICATIONTYPE$\n$SERVICEOUTPUT$\nTime: $SHORTDATETIME$" | /bin/mail -s "$HOSTALIAS$/$SERVICEDESC$" $CONTACTPAGER$
}

По сути это та-же команда оповещения что и по e-mail с той лишь разницей, что уменьшено количество передаваемой информации (SMS может быть всего 76 символов) и в качестве получателя используется макрос $CONTACTPAGER$, а не $CONTACTEMAIL$(подробнее про макросы в Nagios).

Далее создаем контакт которому мы будем слать SMS:

define contact{
        contact_name                    <USER_NAME>
        alias                           <USER_ALIAS>
        contactgroups                   <CONTACT_GROUPS>
        host_notification_period        <HOST_NOTIFICATION_PERIODS>
        service_notification_period     <SERVICE_NOTIFICATION_PERIODS>
        host_notification_options       <HOST_NOTOFICATIONS_OPTIONS>
        service_notification_options    <SERVICE_NOTOFICATIONS_OPTIONS>
        host_notification_commands      host-notify-by-email, host-notify-by-epager
        service_notification_commands   notify-by-email, notify-by-epager
        email                           <USER_EMAIL>
        pager                           <PAGER_EMAIL>
}

Если у вас уже есть контакты и вы хотите добавить им оповещение SMS, то просто добавьте строку

        pager                           <PAGER_EMAIL>

и в опции service_notification_options и host_notification_options добавте notify-by-epager через запятую (см. пример).

Ну вот и все, теоретически вы можете теперь перезагрузить Nagios и попробовать что-нибудь «сломать», вам должно придти SMS сообщение с описанием проблемы.

Похожие посты:

Комментарии

  1. admin:

    Возможно я тут накосепурил где, т.к. писал на больную голову. Но очень уж просили статейку на эту тему…
    В общем жду вашего мнения…

  2. [...] This post was mentioned on Twitter by runix, Большой Брат. Большой Брат said: Nagios: оповещение с помощью SMS http://ff.im/-diSPD [...]

  3. Privet.

    Sorry za translit.
    Dlya SMS notification ya ispol’zoval sledyushyu svyazky:

    nagios + gsm shluz + sms server tools
    http://smstools.meinemullemaus.de/

    + v tom, chto esli y vas bol’shaya ochered’ soobsheniy vi ih polychite momental’no.

    Ne po dely :)
    Chtobi monitorit’ temperatyry ispol’zoval:
    datchik DS18S20 + Digitemp
    http://www.digitemp.com/

    Ydachi v monitoringe!

  4. ese:

    Сам недавно прикрутил нотификацию по СМС к нагиос. У меня БиЛайн, я из России. Для БиЛайн делаем следующее:
    подключаем услугу СМС на email: набираем номерок 06849909, ждем СМС о результате подключения новой услуге;
    далее включаем склейку длинных сообщений: набираем 06849908.
    В результате в полученной первой СМС нам придет наш email с которого все письма будут транслироваться в виде СМС на наш номер.
    Денег БиЛайн не за что не взял.
    Важно! У Украинских операторов видимо нет такого, а вот у БиЛайна при отправке сообщения на такой email текст сообщения отправляется до первого знака перевода строки, поэтому удаляем все \n из command_line директивы command.

  5. Magalex:

    Прежде всего хочу поблагодарить уважаемого Автора за статьи по Nagios и мониторингу! Почерпнул много полезного и интересного.
    По поводу SMS-уведомлений. Мы решили отказаться от использования шлюзов, так как столкнулись с большими задержками. Да и в случае проблем с интернетом мы даже не узнали-бы об этом. Поэтому используем связки Gammu + SE K750i…

    • admin:

      За статьи пожалуйста :)

      А по поводу СМС я уже где-то писал, что использую именно этот метод т.к. Беларусские операторы очень быстро присылают СМС.
      Для того чтобы хоть как-то отгородиться от проблемы отсутствия интернета или проблем с почтовым сервером я настраиваю два сервера с Nagios, один в полной конфигурации, второй занимается только проверкой работоспособности первого, и проверкой доставки писем почтовым сервером.

      Хотя непосредственная отправка СМС действительно удобнее.

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