Мониторим Asterisk при помощи snmp и Zabbix

15 Авг
2011

Хочу поделиться с вами моим опытом настройки мониторинга Asterisk(для краткости, буду называть его *) при помощи Zabbix. Делать мы это будем при помощи snmp. Итак, исходные данные: сервер с FreeBSD 8.1, на котором стоит Asterisk 1.6.2.13 и сервер с CentOS 5, где установлен Zabbix версии 1.8.4.Настройка сервера с * Установим SNMP из портов и добавим его в автозапуск:
cd /usr/ports/net-mgmnt/net-snmp
make && make install clean
echo 'snmpd_enable="YES"' >>/etc/rc.conf
Для работы с мониторингом мы будем использовать SNMP 3 версии, так как 1 и 2 версия ненадежны с точки зрения безопасности. Итак, вы установили нужные пакеты, переходим к настройке. Основной конфигурационный файл SNMP — /usr/local/share/snmp/snmpd.conf. Внесем туда следующие настройки
# Asterisk user 
rwuser asteriskZabbix priv
createUser asteriskZabbix MD5 change_this_password DES
Тут надо заметить, что если астериск работает не в группе asterisk, то здесь нужно прописать ту группу, в которой он работает.
# Asterisk configuration
master agentx
agentXSocket /var/agentx/master
agentXPerms 0660 0550 nobody asterisk
После этого качаем с сайта производителя MIBы и кидаем их в папку /usr/local/share/snmp/mibs. Теперь добавляем SNMP в автозапуск и запускаем его
echo ‘snmpd_enable=”YES”’ >> rc.conf
/usr/local/etc/rc.d/snmpd start
Подгружаем MIB для * setenv MIBS ASTERISK-MIB Теперь настраиваем *. Чтобы мониторить * по snmp нам понадобится модуль res_snmp. Проверить подгружен ли он в * можно командой asterisk -rx ‘module show like res_snmp’, если в консоли появилось что-то вроде
Module Description Use Count
res_snmp.so SNMP [Sub]Agent for Asterisk 0
то у нас все хорошо, идем дальше. Если модуль не подгружен, то его надо либо загрузить вручную командой module load, либо, если такого модуля нет вообще, то пересобрать * с поддержкой snmp. Внесем парочку изменений в конфигурационный файл /usr/local/etc/asterisk/res_snmp.conf subagent = yes enabled = yes На этом этапе подготовительная работа на стороне сервера * закончена. Проверяем все ли работает
snmpwalk -v 3 -u asteriskZabbix -n "" -l authPriv -a MD5 -A change_this_password -X change_this_password localhost asterisk
Если вы увидели что-то вроде этого, то все хорошо
ASTERISK-MIB::astVersionString.0 = STRING: 1.6.2.13
ASTERISK-MIB::astVersionTag.0 = Gauge32: 10602
ASTERISK-MIB::astConfigUpTime.0 = Timeticks: (957070) 2:39:30.70
ASTERISK-MIB::astConfigReloadTime.0 = Timeticks: (957070) 2:39:30.70
Настройка сервера Zabbix Основную работу мы проделали. Теперь нам нужно подключить сервер к Zabbix и добавить туда шаблон. Сначала добавим шаблон, это делается в меню Настройки – Шаблон – Импорт шаблона. Шаблон можно скачать тут. Перед тем, как импортировать его, все значения PASSWORD нужно сменить на тот пароль, который вы указали в snmpd.conf. Теперь добавим наш сервер Настройка – Узлы сети – Создать узел сети. Заполняем поля, вводим название хоста, его ИП адрес, присоединяем шаблон, который мы импортировали. Все, теперь все должно работать. Шаблон умеет показывать количество каналов, версию *, аптайм *, ИД процесса, количество загруженных модулей. Так же в шаблоне есть встроенный график, отображающий количество каналов. Использованные материалы: How To: Monitor Asterisk with SNMP Monitor Asterisk with Zabbix using SNMP Руководство пользователя Zabbix Установка SNMP под FreeBSD На этом все, спасибо за внимание. П.С. если интересно, могу написать про то, как еще можно мониторить некоторые критичные для * моменты с помощью zabbix agent’a.
По материалам Хабрахабр.



загрузка...

Комментарии:

Наверх