9 Рецепты мониторинга
Общие
Мониторинг доступности сервера
По крайней мере три метода (или комбинация из всех методов) могут быть использованы для мониторинга доступности сервера.
- ICMP пинг (ключ "icmpping")
- элемент данных "zabbix[host,agent,available]"
- Функция триггера nodata() для мониторинга доступности узлов сети, для которых используются только активные проверки
Отправка уведомлений с помощью WinPopUps
WinPopUp сообщения могут быть очень полезны, если вы работаете в ОС Windows и хотите быстро получать оповещения от Zabbix. Эта функция может быть хорошим дополнением к оповещениям по почте. Подробности о внедрении WinPopUp вы можете найти по адресу http://www.zabbix.com/forum/showthread.php?t=2147.
Мониторинг специфичных приложений
AS/400
Платформу IBM AS/400 можно мониторить с помощью SNMP. Более подробную информацию вы можете получить по адресу http://publib-b.boulder.ibm.com/Redbooks.nsf/RedbookAbstracts/sg244504.html?Open.
MySQL
Несколько пользовательских параметров, которые можно использовать для мониторинга MySQL, представлены в файле конфигурации агента: /usr/local/etc/zabbix_agentd.conf
### Set of parameters for monitoring MySQL server (v3.23.42 and later)
### Change -u and add -p if required
#UserParameter=mysql.ping,mysqladmin -uroot ping|grep alive|wc -l
#UserParameter=mysql.uptime,mysqladmin -uroot status|cut -f2 -d":"|cut -f2 -d" "
#UserParameter=mysql.threads,mysqladmin -uroot status|cut -f3 -d":"|cut -f2 -d" "
#UserParameter=mysql.questions,mysqladmin -uroot status|cut -f4 -d":"|cut -f2 -d" "
#UserParameter=mysql.slowqueries,mysqladmin -uroot status|cut -f5 -d":"|cut -f2 -d" "
#UserParameter=mysql.qps,mysqladmin -uroot status|cut -f9 -d":"|cut -f2 -d" "
#UserParameter=mysql.version,mysql -V
- mysql.ping
Проверяет работает ли MySQL.
Результат: 0 - не запущен 1 - доступен
- mysql.uptime
Количество секунд с момента запуска MySQL.
- mysql.threads
Количество потоков MySQL.
- mysql.questions
Количество обрабатываемых запросов.
- mysql.slowqueries
Количество медленных запросов.
- mysql.qps
Запросов в секунду.
- mysql.version
Версия MySQL. Наример: mysql Ver 14.14 Distrib 5.1.53, for pc-linux-gnu (i686)
Для получения дополнительной информации смотрите также файл userparameter_mysql.conf в папке conf/zabbix_agentd.
Роутеры Mikrotik
Используйте SNMP агент предоставляемый Mikrotik. Смотрите http://www.mikrotik.com для получения более подробной информации.
WIN32
Используйте включенный в поставку Zabbix агент Win32 (скомпилированный).
Novell
Используйте MRTG Extension Program для сервера NetWare (MRTGEXT.NLM) для Novell. Агент совместим с протоколом использованным в Zabbix. Агент доступен по адресу http://forge.novell.com/modules/xfmod/project/?mrtgext.
Элементы данных должны быть настроены на тип Zabbix Агент и должны иметь ключи в соответствии с документацией MRTGEXT.
Например:
- UTIL1 - Средне использование ЦПУ за 1 минуту
- CONNMAX - Использование максимального количества лицензируемых подключений
- VFKSys - Свободно байт в разделе Sys:
Полный список поддерживаемых параметров у агента вы можете найти в файле readme.txt, который является частью приложения.
Tuxedo
Tuxedo утилиты для командной строки tmadmin и qmadmin могут быть использованы в определениях UserParameter, для того чтобы получить счетчики производительности сервера/сервисов/очереди и доступности ресурсов Tuxedo.
Informix
Стандартная утилита Informix onstat может быть использована для мониторинга практически всех аспектов базы данных Informix. Кроме того, Zabbix может получать информацию через предоставляемого Informix SNMP агента.
HP OpenView
Zabbix можно настроить для отправки сообщений серверу OpenView. Должны быть выполнены следующие шаги:
Шаг 1
Создайте новый Способ оповещений.
Этот Способ оповещений будет выполнять скрипт, который будет отправлять требуемую информацию в OpenView.
Шаг 2
Создайте нового пользователя.
К пользователю нужно присоединить (добавить) только что созданный Способ оповещений.
Шаг 3
Настройте действия.
Настройте действия для отправки пользователю всех (или выбранных) изменений состояния триггеров.
Шаг 4
Напишите скрипт оповещения.
Скрипт будет иметь следующую логику. Если триггер перешел в состояние ПРОБЛЕМА, тогда выполняется OpenView команда opcmsg -id application=<application> msg_grp=<msg_grp> object=<object> msg_text=<text>. Эта команда будет возвращать уникальный ID сообщения, который нужно где-то сохранить, предпочтительно в новой таблице в базе данных Zabbix. Если триггер вернулся в состояние ОК, в таком случае должно быть выполнена команда opcmack <message id> с ID сообщения, полученным из базы данных.
Обратитесь к официальной документации OpenView для более подробной информации по opcmsg и opcmack. Сам скрипт здесь не предоставляется.