NagVis: управление сложностью в Nagios
Стив Макконел в своей фундаментальной книге «Совершенный код» как одну из основных парадигм программирования называет «управление сложностью». Проще говоря – простые вещи должны быть простыми, сложные должны «выглядеть» как простые. Именно к этой цели в идеале должен стремится каждый уважающий себя системный администратор
.
Nagios, для большинства пользователей и некоторой части админов, вещь достаточно сложная и не понятная, плюс добавим абсолютно не удачный стандартный web-интерфейс и мы получим отличный продукт которым, к сожалению, сложно пользоватся. Действительно, простому смертному долгая медитация над разноцветными строчками оформленными в унылую таблицу ни о чем не скажет. А вот если рядом с изображением винчестера будет гореть красный крестик, пользователя становится интуитивно понятно, что с диском что-то не так. Админу не нужно напрягаться чтобы вспомнить «а что это?» и пользователь несказанно рад что он кое-что понимает. Для этого собственно и служит такой отличный модуль для Nagios как NagVis.
Это пример того что я называю «настоящей модульностью программы», если вам нужен NagVis вы берете и доставляете его, если вам NagVis не нужен вы о нем и не узнаете до тех пор пока он не понадобится (это я про Zabbix
).

0. Документация
Cайт NagVis: http://www.nagvis.org/
Официальная документация по NagVis: http://www.nagvis.org/documentation
Cтраница NDOUtils: http://www.nagios.org/download/addons/
Официальная документация по NDOUtils: http://support.nagios.com/knowledgebase/officialdocs
UPD. Вторая статья – NagVis: Установка и первоначальная настройка
1. Что это? Кому это нужно?
Для начала ответим на первый вопрос обратившись к странице «About» сайта NagVis:
«…
Ключевые возможности:
- Отображает отдельные хосты и сервисы
- Инкапсюляция таких компонентов как хост или группа хостов в одной иконке (значке)
- Отображение суммарной информации о хосте и всех его сервисах в одной иконке
- Отображает только существующие проблемы
- Возможность использования под-карт (суб-карт), т.е. в качестве статуса (значка) на карте показывается общий статус другой карты
- Полная визуализация IT процессов
- Онлайн документация по IT окружению, включающая в себя текущее состояние
- Конфигурирование с помощтю Web-интерфейса (WUI)
Лицензия
Целая куча английских букв, но суть сводится к тому что это просто GPL.
…». (Извиняюсь за корявость языка, не смог перевести лучше)
Понадобится NagVis может для многих целей, к примеру вы хотите дать пользователям возможность самосоятельно отслеживать состояние нужных им служб или создать «живую» карту сети. Очень интересным применением для NagVis я считаю создание информационных терминалов, вроде такого:
2. Как это работает?
NagVis в своей работе целиком и полностью опирается на модуль Nagios`а NDOUtils, этот модуль позволяет записывать все состояния сервисов/хостов и многое другое в базу данных, оттуда уже NagVis берет нужные нам данные. Затем на основании созданной заранее карты и Ajax нам выдается текущее состояние сети в красивом виде.
Под картой в NagVis подразумевается фоновая картинка, на которой установлены иконки статуса хостов/сервисов. Кто то понимает слово «карта» буквально и делает что-то вроде этого:

А кто-то не заморачивается и фотографирует серверную стойку или комнату с оборудованием и добавляет иконки статусов, я бы назвал это «живой» картой:

Согласитесь достаточно наглядно, и если что-то сломалось не возникает вопроса «А где это находится?». Т.е. на лицо упрощение «интерфейса» с мониторинговой системой, повышение наглядность, и так сказать самодокументированность сети. Побольше скриншотов можно найти на официальном сайте (все картинки выше взяты оттуда).
3. «Дайте два…» из к/ф «12 стульев»
Как видите NagVis во всей красе показывает преимущества модульной архитектуры Nagios. Это мощьный и функционален модуль, который позволяет помимо явной своей полезности добится некоторых «побочных» эффектов. Если вы ленивы настолько что используете дистрибутив «Fully Automated Nagios» или FAN (маленький обзор) то NagVis у вас уже скорее всего стоит и даже работает, вы можете перейти по ссылке http://<nagios_FAN_server>/nagios/nagvis/.
Если же вы не используете FAN то могу посоветовать только дождатся следующей статьи в этой серии
.

Инкапсюляция
проверочное слово – капсУла