Мониторинг FreePBX через Zabbix

Очень кратко опишу как можно настроить мониторинг FreePBX через Zabbix. Буквально в режиме шпаргалки. Возможно, что кому-то пригодится.

Версии ПО

Версия Zabbix: Zabbix 6.2.6.

Версия FreePBX: 14.0.16.11 (Asterisk 14.5.0).

Подготовка FreePBX

Перед непосредственной настройкой шаблона в Zabbix нужно выполнить подготовку FreePBX.

Включение Mini HTTP сервера

Хотя в веб интерфейсе FreePBX есть возможность включить mini-HTTP сервер для Asterisk (Settings – Advanced Settings), но по факту настройку через GUI не работает.

Необходимо напрямую вносить изменения в конфигурационный файл manager.conf.

nano /etc/asterisk/manager.conf

В секции General необходимо добавить опцию:

webenabled=yes

Перезапускаем Asterisk:

systemctl restart asterisk

Проверяем включился ли mini-http сервер:

asterisk -rx "http show status"
HTTP Server Status:
Prefix: 
Server: Asterisk/14.5.0
Server Enabled and Bound to [::]:8088

HTTPS Server Enabled and Bound to [::]:8089

Enabled URI's:
/httpstatus => Asterisk HTTP General Status
/amanager => HTML Manager Event Interface w/Digest authentication
/arawman => Raw HTTP Manager Event Interface w/Digest authentication
/manager => HTML Manager Event Interface
/rawman => Raw HTTP Manager Event Interface
/static/... => Asterisk HTTP Static Delivery
/amxml => XML Manager Event Interface w/Digest authentication
/mxml => XML Manager Event Interface
/ws => Asterisk HTTP WebSocket

Enabled Redirects:
  None.

Создание пользователя

Теперь необходимо создать пользователя для подключения со стороны Zabbix агента:

1. Переходим в раздел “Settings” – “Asterisk Manager User”.

2. Нажимаем кнопку “Add Manager”.

3. Создаем нового пользователя

Нужно указать имя пользователя. Пароль сгенерируется автоматически. Также в поле “Permit” дополнительно необходимо указать IP-адрес сервера Zabbix.

4. Сохраняем внесенные изменения.

Проверить доступность веб сервиса можно следующим запросом:

http://192.168.10.11:8088/rawman/?action=login&username=zabbix&secret=77e7bcf672586fg0045b224578832554d
Response: Success
Message: Authentication accepted

Установка агента Zabbix

Кратко опишу процесс для версии FreePBX с котрой я работал.

Сналача нужно добавить репозиторий:

rpm -Uvh   https://repo.zabbix.com/zabbix/6.2/rhel/7/x86_64/zabbix-release-6.2-1.el7.noarch.rpm

А затем запустить установку агента:

yum insall zabbix-agent

Включим и запустим агента Zabbix:

systemctl enable zabbix-agent
systemctl start zabbix-agent

Настройки в Zabbix

Мониторинг FreePBX можно настроить использую шаблона от Asterisk, т.к. по большому счету FreePBX добавляет только графическую оболочку, но не особо изменяет механизм работе Asterisk.

Настройка мониторинга выполняется следующим образом:

1. Добавляем FreePBX в качестве хоста в Zabbix.

2. Применяем шаблон “Asterisk by HTTP”.

3. Переопределяем макросы {$AMI.SECRET} и {$AMI.URL}.

МакросЗначение
{$AMI.SECRET}Пароль пользователя Asterisk Manager User
{$AMI.URL}Адрес серверва FreePBX ( на нем же работает Asterisk Manager API). Пример: http://192.168.10.11:8088/rawman

Если вы создали пользователя в FreePBX с именем отличным от “zabbix”, то вам дополнительно нужно переопределить макрос {$AMI.USERNAME} и указать имя того пользователя, которого вы создали

4. Сохраняем внесенные изменения.

Мониторинг FreePBX – проверка

Проверить получается ли собрать данные можно на странице “Monitoring” – “Latest Data”.

Мониторинг FreePBX через Zabbix: 8 комментариев

  1. Добрый день, подскажите , пожалуйста, как поправить . примерно через 6 часов zabbix перестает мониторить asterisk пишет ошибку подключения AMI. если перезапустить zabbix сервер – снова подключается и работает часов 6.

  2. как бороться с проблемой лога от freepbx в ->> zabbix
    “sda: Disk read/write request responses are too high”

    1. Добрый день! Предположу, что проблема даже не во FreePBX, а в хранилище на котором диск находится. Если это ВМ, то попробуйте перенести её на более быстрый тип хранилища. Возможно, что то хранилище, на котором сейчас находится FreePBX, нагружено еще чем-то помимо её. Можете, например, через iostat посмотреть текущую статистику нагрузки на дисковую подсистему FreePBX.

  3. Вроде все взлетело
    на 16.30.0 – Asterisk: SIP trunks active channels отражает счетчик 0 , хотя транк используется 1, что может быть не так ?

  4. Здравствуйте, проделал все как в вашей инструкции, но по какой-то причине в zabbix висит сообщение “Asterisk: Service is down”. Телефония работает, на странице дашборда показано Asterisk, MySQl и т.д. работают.
    Подскажите что-нибудь, в каком направлении копать?

    1. Добрый день! Я бы смотрел в сторону пользователя, которого вы создавали для агента Zabbix во FreePBX. В большинстве случаев проблемы случаются из-за его неправильной настройки. Дополнительно нужно обязательно посмотреть журналы агента Zabbix.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *