Заказать звонок с сайта
Мы будем перезванивать вам с номера
+74991137011
Нажимая на кнопку, вы даете согласие на обработку персональных данных и соглашаетесь c политикой конфиденциальности.
Телефонизация. Технический блог.

Подключаем FreePBX через zabbix-agent к zabbix 6.x

В общем про Asterisk FreePBX

Подключаем FreePBX через zabbix-agent к zabbix 6.x

Привет. Сегодня покажу как я подключаю сервера с freePBX к zabbix агенту, чтобы работал шаблон asterisk by http

Ставим zabbix-agent на freepbx

Под Centos 6.6
rpm -Uvh http://repo.zabbix.com/zabbix/6.4/rhel/6/x86_64/zabbix-agent-6.4.7-release1.el6.x86_64.rpm
yum -y instal zabbix-agent

Под Centos 7
rpm -Uvh http://repo.zabbix.com/zabbix/6.4/rhel/7/x86_64/zabbix-agent-6.4.7-release1.el7.x86_64.rpm

yum -y install zabbix-agent

Настраиваем zabbix-agent на подключение к zabbix серверу

У меня все freepbx находятся вне сети zabbix сервера
nano /etc/zabbix/zabbix_agentd.conf
Изменяем параметры значений
#Кому можно подключаться к zabbix-agent пишем IP zabbix сервера и/или локальной сети
Server=176.176.176.176,192.168.0.0/24
#Порт на котором будет висеть zabbix-agent и ждать подключения
ListenPort=10050
#Указываем ip zabbix сервера
ServerActive=176.176.176.176
#Указываем имя этого zabbix-agent которое будет потом в zabbix-server
Hostname=sip.blabla.ru

Настраиваем авто регистрацию на Zabbix сервер ( полезно если несколько freepbx у вас и лень заводить руками) Можно пропустить.

Идем в вебморду zabbix сервера. Alerts-Actions-Autoregistration actions.
Создаем новое действие. Добавляем маску по которой будет искать совпадение по параметру в zabbix-agent hostname=
Назначаем действие, что делать если найдено совпадение. Назначаем шаблоны по которым будем мониторить.

Настраиваем теперь freePBX

Подключаемся по ssh к freePBX изменяем конфиг /etc/asterisk/manager.conf
Изменяем и добавляем, если у вас не так в секцию [general]
bindaddr = 0.0.0.0
webenabled=yes

Идем в вебморду Settings-Asterisk manager users

Добавляем нового менеджера
Назначаем ему права и сохраняем

Идем в Setting-advanced settings

Включаем Asterisk builtin mini-HTTP server

Настраиваем firewall freePBX и открываем порт zabbix-agent

Детально настройку firewall на freePBX я расписывал в этом посту
Добавляем IP zabbix сервера (если вы не в одной сети), если в одной сети, то у вас локалка уже должна быть в исключениях и вы пропускаете этот пункт.
в Connectivity - Firewall - Networks
176.176.176.176 и назначаем зону Other (Other traffic)

Далее в боковом меню Services-Custom Services
Добавляем порт Zabbix-agent в моем случае 10050 и назначаем зону other. Жмем на зеленую галочку чтобы применилось.

Добавляем порт 8088 mini-http сервера asterisk и назначаем зону other. Жмем на зеленую галочку чтобы применилось.
Если вы в одной сети с freePBX, то зона у вас должна быть Local на эти порты выбрана

Перезапускаем manager freePBX и перезапускаем zabbix-agent

Подключаемся по ssh к freePBX и выполняем команды:
Asterisk -rx"manager reload"
systemctl restart zabbix-agent
Если у вас FreePBX находится за роутером и zabbix сервер стоит не в той же сети, то вам еще необходимо на роутере пробросить порт 10050 на freePBX, чтобы работал активный мониториг.

Возвращаемся в Zabbix сервер

К этому моменту у вас уже zabbix-agent должен был отправить инфу о своем существовании на zabbix сервер и хост должен был создаться.

Проверяем и изменяем параметры хоста в zabbix сервер

Смотрим что все шаблоны назначены Data collection - host
Добавляем макрос чтобы заработало все. Data collection host - sip.blabla.ru - Macros
http://176.176.176.175:8088/rawman
где 176.176.176.175 белый IP FreePBX

Если freePBX и zabbix сервер в одной сети, тогда:
http://192.168.0.242:8088/rawman
где 192.168.0.242 - локальный IP FreePBX

Проверяем что в latest data прогрузились значения от asterisk

Идем Monitoring - Latest data. Фильтруем по host и смотрим значения.
Если все, то должно быть так:
На этом настройка закончена. Всем успехов.