В 2018 году я написал шаблон для Zabbix 3.4:
Мониторинг postfix через zabbix
Теперь я переделал шаблон мониторинга Postfix под пятый Zabbix. Мониторится статистика отправленных писем: Bounced, Deferred, Expired, Queue, Refused, Reject, Sent. Соединения Connect From и Connect To.
9 элементов данных, 5 триггеров, три графика.
Пока переделывал, нашёл ошибку и сразу создал вторую версию шаблона. Внёс изменение в скрипт postfix_data.sh. Оказалось, что при большом количестве писем возможна ситуация, когда значения во временном файле postfix_data.dat дублируются после перезагрузки сервера. Сделал сортировку с удалением дублей. Также считываю только уникальное значение, чтобы уменьшить вероятность считывания неверных данных.
Установка шаблона
Скачать шаблон для Zabbix 5.0: zabbix_postfix
Импортируем шаблон zbx5_postfix.xml. Подключаем шаблон к хостам.
В макросах шаблона можно отредактировать параметры:
- {$POSTFIX_MAX_BOUNCED} — 1000.
Граница срабатывания триггера Bounced. - {$POSTFIX_MAX_DEFERRED} — 20000.
Граница срабатывания триггера Deferred. - {$POSTFIX_MAX_QUEUE} — 30000.
Граница срабатывания триггера Queue. - {$POSTFIX_MAX_REFUSED} — 1000.
Граница срабатывания триггера Refused. - {$POSTFIX_MAX_REJECTED} — 1000.
Граница срабатывания триггера Reject.
В зависимости от нагрузки на сервер, вы можете сами установить границы срабатывания триггеров.
На серверах, которые собираемся мониторить, установим пакет logtail:
apt-get install logtail -y
Копируем папку со скриптами в /etc/zabbix/scripts/. В ней у нас:
- /etc/zabbix/scripts/postfix_data.sh
Не забываем про владельца и права:
chown -R root\: /etc/zabbix/scripts
chmod a+x /etc/zabbix/scripts/*
Добавляем скрипт postfix_data.sh в cron от рута:
crontab -e
*/10 * * * * bash /etc/zabbix/scripts/postfix_data.sh
service cron restart
Копируем userparameter_postfix.conf в папку с пользовательскими переменными, у меня это /etc/zabbix/zabbix_agentd.conf.d/userparameter_postfix.conf.
Не забываем про владельца и права:
chown root\: /etc/zabbix/zabbix_agentd.conf.d/userparameter_postfix.conf
chmod 644 /etc/zabbix/zabbix_agentd.conf.d/userparameter_postfix.conf
Перезапускаем агент:
service zabbix-agent restart
Готово. Раз в 10 минут будет срабатывать скрипт для подсчёта и обновления статистических данных Postfix. Данные хранятся во временном файле.
Примечание: тысячи писем отображаются как "килописьма": Kmails. Это не баг, это фича.
Источник:
Если вам понравилась статья, то ставьте 👍🏻 каналу.
Пишите комментарии, задавайте вопросы, подписывайтесь.