В этой статье мы расскажем как научить программу Zabbix отправлять события на почту.
В самом Zabbix есть встроенный клиент для отправки сообщений на почту, но он работает без авторизации на почтовом сервере SMTP. Данный функционал, вы можете посмотреть в консоли Zabbix (Administration->Media types->Email). Можно попытаться настроить реальный почтовый ящик, но почта у вас отправлять не будет, так как практически все почтовые сервера (mail.ru, gmail.com, yandex.ru) требуют авторизацию.
Поискав в интернете, мы нашли решение.
Рекомендуется поднять свой собственный smtp клиент на сервере, где установлен Zabbix. Как это сделать мы писали в данной статье. На своем сервере я использую Ubuntu 14.10, но настройки ssmtp от Centos не отличаются. Далее необходимо написать скриптик на bash и указать Zabbix отправлять уведомления через этот скрипт.
Перейдем к непосредственной настройке:
1) Смотрим, где Zabbix хранит свои скрипты. Для этого в файле zabbix_server.conf ищем строку AlertScriptsPath и при необходимости меняем путь (по умолчанию путь /usr/lib/zabbix/alertscripts, мы менять его не будем).
sudo nano /etc/zabbix/zabbix_server.conf
2) Создаем bash скрипт, необходимы для отправки сообщений. И кладем в папку /usr/lib/zabbix/alertscripts.
sudo nano /usr/lib/zabbix/alertscripts/emailnotification.sh
И вписываем в него следующий скрипт:
#!/bin/bash
to=$1
subject=$2
body=$3
cat <$body
EOF
3) Далее переходим в консоль Zabbix (Administration->Media types->Email) и в поле Type выбираем Script. В поле Script name указываем имя созданного скрипта. И нажимаем кнопку Update.
4) Даем права на файл emailnotification.sh
cd /usr/lib/zabbix/alertscripts
sudo chmod 777 emailnotification.sh
5) Необходимо перезапустить Zabbix server, через консоль.
sudo service zabbix-server restart
Далее создаем в Zabbix тригер и проверяем, отправку почты при срабатывании тригера.
Вроде бы все должно работать, но ничего не работает. Письмо не приходят. Я поставил утилитку mailutils, и письма начали приходить корректно. Для этого выполните, следующую команду:sudo apt-get install mailutils