Nagvis

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску



Установка производится в arch. Ebuild для nagvis брать в багзиле. Установка подразумевает, что nagios с поддержкой apache уже установлен. Рабочая связка представляет из себя следующее: пакет net-analyzer/ndoutils предоставляет необходимые инструменты для помещения информации от nagios в базу данных, из которой в последствии берет нужные данные nagvis в сочетании с данными о состоянии объектов nagios, которые передаются через сокет, предоставляемый пакетом net-analyzer/mk-livestatus.

USE флаги

dev-lang/php: apache2 gd mysql session xml pdo 
net-analyzer/nagvis: apache2 automap
net-analyzer/mk-livestatus: -examples -perl -python -test

Установка пакетов

При установке nagvis было выбрано использование mysql.

emerge net-analyzer/mk-livestatus net-analyzer/nagvis net-analyzer/ndoutils dev-db/mysql

Настройка ndoutils

В ndoutils входят 2 модуля: ndomod и ndo2db. ndomod интегрируется с nagios в результате чего данные от nagios поступают к модулю ndo2db, который в свою очередь поступившие данные кладет в базу.

Настройка ndomod

Создание базы

mysq> create database nagios;

Создание таблиц в базе

/usr/share/nagios/db/installdb -u <user> -p -h <host> -d nagios

Ebuild ndoutils к версии 1.4_beta9 не ставит в систему скрипт installdb, поэтому его надо достать из исходника ndoutils. Имеет смысл проверить префикс созданных таблиц, по умолчанию это nagios_.


Пример файла конфигурации Шаблон:File

output_type говорит о том, что данные для модуля ndo2db передаются через unixsocket, который расположен согласно значению параметра output.

Note: В данном примере это расположение выбрано не совсем удачно (т.е в директоии htdocs), поэтому имеет смысл вынести его за пределы apache. Тоже самое относится и к другим объектам в директории /usr/share/nagios/htdocs/rw/, которые будут упоминаться далее.


Активация в nagios Шаблон:File Подробности активации/ошибки можно получить в логах nagios.

...
ndomod: NDOMOD 1.4b9 (10-27-2009) Copyright (c) 2009 Nagios Core Development Team and Community Contributors
ndomod: Successfully connected to data sink. 0 queued items to flush.
Event broker module '/usr/bin/ndomod.o' initialized successfully.
...

Настройка ndo2db

Шаблон:File Согласно этому файлу, данные берутся из socket_name и кладутся в базу nagios под учетной записью db_user. После чего запускаем ndo2db

/etc/init.d/ndo2db start

Если сервис не запустится, то о причинах можно посмотреть в debug_file или попробовать его запустить из shell

# ndo2db -c /etc/nagios/ndo2db.cfg Could not bind socket: Permission denied

Причина в правах доступа на debug_file или socket_name. Поэтому необходимо проверить все нужные права доступа для пользователя, указанного в ndo2db_user.

Настройка mk-livestatus

В nagios.cfg добавить

broker_module=/usr/lib64/mk-livestatus/livestatus.o  /usr/share/nagios/htdocs/rw/live debug=0

Проверить загрузку модуля в логах nagios.

Проверка сокета live

echo 'GET hosts' | unixcat /var/lib/nagios/rw/live
acknowledged;action_url;address;alias;check_command;check_period;checks_enabled;contacts;in_check_period;in_notification_period;is_flapping;last_check
;last_state_change;name;notes;notes_url;notification_period;scheduled_downtime_depth;state;total_services
0;/nagios/pnp/index.php?host=$HOSTNAME$;127.0.0.1;Acht;check-mk-ping;;1;check_mk,hh;1;1;0;1256194120;1255301430;Acht;;;24X7;0;0;7
0;/nagios/pnp/index.php?host=$HOSTNAME$;127.0.0.1;DREI;check-mk-ping;;1;check_mk,hh;1;1;0;1256194120;1255301431;DREI;;;24X7;0;0;1
0;/nagios/pnp/index.php?host=$HOSTNAME$;127.0.0.1;Drei;check-mk-ping;;1;check_mk,hh;1;1;0;1256194120;1255301435;Drei;;;24X7;0;0;4

Настройка nagvis

Пример настройки в /etc/nagvis/nagvis.ini.php-sample. Минимальная базовая настройка nagvis Шаблон:File В дальнейшем эти данные можно будет отредактировать через веб-интерфейс. Для того, чтобы к nagvis можно было обращаться из меню nagios, нужно добавить ссылку в файл /usr/share/nagios/htdocs/side.ph

<a href="nagvis/" target="<?php echo $link_target;?>">Nagvis</a>

Добавление кода nagvis в htdocs nagios

ln -s /usr/share/nagvis /usr/share/nagios/htdocs/nagvis


Настройка apache. Добавить в /etc/conf.d/apache2 к параметру APACHE2_OPTS значение

-D NAGVIS

Дополнительная информация

Подробное описание принципа работы MK Livestatus

Документация к Nagvis