Нагиос оповещения по телефону?
У меня есть пара серверов nagios, которые в настоящее время предупреждают меня по SMS и электронной почте, но я бы хотел добавить к этому исходящие звонки. Идеальным решением было бы, чтобы устройства nagios вызывали мой мобильный телефон и воспроизводили mp3/wav через звонок, чтобы сообщить мне, что что-то не так. Моя единственная проблема в том, что я не знаю, как это сделать.
Я подозреваю, что мне, возможно, придется купить карту УАТС, но я надеялся, что кто-то здесь сделал что-то подобное с обычным модемом и готовым программным обеспечением. Есть идеи или намеки?
8 ответов
Звездочка излишня - но будет работать без проблем. Сэкономьте время и получите голосовой модем и используйте vgetty.
Вот учебник, в котором показан 11-строчный Perl-скрипт для воспроизведения сообщения через исходящий вызов:
Вы должны заглянуть в Asterisk, АТС с открытым исходным кодом
Возможно, вы захотите взглянуть на готовые дистрибутивы, а не начинать с нуля, так как Asterisk вполне настраиваемый и может быть пугающим для новичка на низком уровне (во многом как Apache httpd).
Для отправки описанных вами предупреждений я бы предложил использовать конфигурацию файла спула. Создайте план набора номеров, который при вызове набирает соответствующий номер и воспроизводит нужный файл. Как только это сработает, вы можете поместить файлы в каталог Asterisk, что приведет к вызову этой части вашей абонентской группы. Вы можете передавать параметры и тому подобное в файлы спула, чтобы вам не приходилось создавать каждое сообщение с нуля - его можно было бы зачитать буквенно за буквой на сервере или использовать интеграцию с несколькими механизмами TTS, чтобы попытаться сказать: название сервера.
Вам понадобится исходящее завершение, чтобы вывести вызов на PSTN, но есть много поставщиков таких услуг. Большинство предлагают цены, когда вы платите небольшую постоянную плату за учетную запись, а затем низкую (порядка центов в минуту) плату за исходящий звонок.
Надеюсь, это поможет.
Если вы все еще ищете решение, вы можете взглянуть на PagerDuty. PagerDuty будет собирать оповещения из любой системы мониторинга, которая может отправлять электронные письма (включая Nagios), а также отправлять телефонные звонки и SMS-сообщения списку людей, которых вы предоставляете. Он также позволяет создавать графики вызовов и цепочки эскалаций.
[Отказ от ответственности: я один из тех, кто работает над PagerDuty, так что я могу быть предвзятым:P]
Посмотрите на нагаст. Это позвонит вам в случае возникновения проблем и сообщит о подтверждении в nagios. Кроме того, он создаст вызов, если nagiosbox не пинговал (не icmp, а nagast-ping) в течение определенного времени. https://github.com/tuxis-ie/nagast
Я не уверен насчет набора номера, но я считаю, что вы можете использовать фестиваль, чтобы сделать текст, чтобы озвучить его часть.
Может быть, будет полезен клиент командной строки sip, подобный описанному здесь? очень многое зависит от того, что вы контролируете, насколько надежным будет ваш sip-провайдер и так далее. все же я больше доверяю аппаратному шлюзу смс. при условии, что вы не контролируете инфраструктуру доступа в интернет или ваш сервер nagios имеет отдельное независимое подключение к интернету - это может сработать.
Существуют такие службы, как http://email2phone.net/, которые преобразуют сообщения электронной почты в телефонные звонки. Как правило, они просты в настройке и не требуют изменений в настройках Nagios, кроме добавления нового адреса электронной почты. Вы несколько ограничены в том, что вы можете сделать, но для быстрого решения это может сработать для вас. Если вы хотите больше гибкости и иметь некоторые навыки разработки, Twilio также будет хорошим вариантом.
Оба из них, а также локальные опции, основанные на sip, будут иметь проблемы, если у вас будет полная потеря соединения. Для этого вам потребуется либо отдельное соединение для уведомления (например, линия PSTN), либо использовать Nagios вместе со сторонней службой мониторинга, чтобы предупредить вас о полной потере соединения.