Мониторинг IT-инфраструктуры с Zenoss Core ч.1
Опубликовано вт, 09/13/2011 - 15:59 пользователем alitius
Итак, чтоже такое Zenoss? Zenoss это система мониторинга сетевой инфраструктуры распространяемая под лицензией GPL. Существует две версии этого продукта - коммерческий - Zenoss Enterprise и свободный - Zenoss Core, разница которых состоит в наличии официальной поддержки и дополнительных модулей для Enterprise.
Возможности системы:
- мониторинг сетевых устройств с помощью SNMP, SSH, WMI, JMX, Ping/ICMP, Syslog
- Мониторинг сетевых сервисов HTTP, POP3, NNTP, SNMP, FTP
- мониторинг системных ресурсов различных операционных систем (по крайне мере на Windows, Linux, FreeBSD проверил, на MacOS не пробовал)
- мониторинг производительности устройств
- система оповещения с настраиваемыми событиями, реакцией и обнаружением взаимосвязи
- возможность расширения функциональности за счет плагинов ZenPack и плагинов системы мониторинга Nagios
В списке плагинов ZenPacks, доступных на сайте доступно множество плагинов для таких устройств - APC, Dell, Cisco и т.д, сервисов - Asterisk, VMware, MySQL, Microsoft IIS и много другого.
Рекомендованные системные требования для сервера:
Сеть до 250 устройств - память 4 GB, процессор Core 2 Duo E6300 1.86/1066 RTL, дисковое пространство 75 GB (надо понимать, что если устройств будет 25-30, то требования будут гораздо ниже)
Сеть более 250 устройств - память 8 GB, процессор XEON 5120 DC 1.86/1066/4MB, четыре диска по 75 Гб в паре массивов RAID-1
ОС - Linux, FreeBSD, Solaris/OpenSolaris, Mac OS X или VMware Appliance.
Согласно руководства для мониторинга на клиентах ничего устанавливать не надо, но если мы будем мониторить по snmp, то по-краней мере на Unix-like системах необходимо установить клиента snmp (например net-smnp), а на windows системах - SNMP-Informant.
Поддерживаются все основные виды браузеров (разработчики гарантируют полную работоспособность на Firefox 3, 4 и 5, Internet Explorer 7, 8 и 9, частичную Chrome, Opera, Safari 3 и 4). Не знаю почему частичную, но по краней мере в Chrome 13 и Rekonq он работает стабильно.
Русская локализация для данной системы отсутствует, но учитывая ее специфику, она в принципе и не нужна. Если кому-то интересно провести локализацию самостоятельно, то она ничем не отличается от локализации других проектов. При наличии интереса, в будущем могу написать статью на эту тему.
Итак устанавливать будем на Ubuntu 11.04.
Установливаем snmp -
sudo apt-get install snmp snmpd
Создаём конфиг для snmpd -
sudo mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.original
sudo nano /etc/snmp/snmpd.conf
Добавляем туда -
syslocation Servernaja
syscontact “Adminstrator <admin@domain.loc>”
rocommunity public 127.0.0.1
disk /
disk /home
Перезапускаем snmpd:
sudo /etc/init.d/snmpd restart
Проверяем -
snmpwalk -v2c -c public 127.0.0.1 system
И тут меня ждал сюрприз -
system: Unknown Object Identifier (Sub-id not found: (top) -> system)
Оказывается все Mib'ы были выпилены из дистрибутива, решается -
sudo aptitude install snmp-mibs-downloader
sudo sed -i "s/^\(mibs *:\).*/#\1/" /etc/snmp/snmp.conf
Еще раз проверяем,
snmpwalk -v2c -c public 127.0.0.1 system
если все гуд, значит переходим к установке самого Zenoss.
Прошу обратить внимание, что данная настройка snmp не является безопасной, и приведена для примера, для более тонкой настройки прошу обратиться к документации по SNMP.
Установка Zenoss возможна несколькими способами:
По старым мануалам можно было установить из репозитория (deb http://dev.zenoss.org/deb main stable), но на момент написания статьи данный репозиторий был не доступен.
Таким образом остается два варианта, 1 установка через бинарный инсталятор (.bin), 2 через deb-пакет.
Мы быдем устанавливать по первому варианту.
Скачиваем пакет -
wget http://downloads.sourceforge.net/zenoss/zenoss-stack-3.2.0-linux.bin
Даем права на запись -
chmod +x zenoss-stack-3.2.0-linux.bin
И запускаем на выполнение -
sudo ./zenoss-stack-3.2.0-linux.bin
Прошу обратить внимание, что по-умолчанию установщик ставит свою копию mysql и соответсвенно запрашивает пароль рута для этой копии. Конфиг находится /usr/local/zenoss/mysql/my.cnf.
На этом установка завершена.
В процессе установки у нас создается пользователь zenoss, под которым и работают все сервисы, устанавливается копия python 2.6, mysql и пр.
В текстовом режиме установка идентична, для запуска в текстовой режиме можно использовать ключ --mode=text.
По умолчанию используется порт 8080, если он свободен то скрипт установки не выдаст запрос, если необходимо указать другой номер порта, установка можно запустить с ключом --zope_server_port.
Проверяем нужный нам порт:
netstat -ant | grep 8080
Если не прослушивается, то запускаем Zenoss :
sudo service zenoss-stack start
Для входа открываем браузер и переходим http://ip-адрес:8080 (на локальной машине http://localhost:8080)
На этапе предварительной настройки необходимо пройти всего два шага, это задать пароль администратора и создать учетную запись пользователя -
Второй шаг позволяет добавить устройства для мониторинга, в качестве примера я добавил одно устройство, но предпочитаю добавлять уже после окончательной настройки сервера. На этом шаге доступны два варианта ручной и автоматический поиск. В первом случае необходимо указать имя или IP-адрес хоста и в окне справа выбрать тип SNMP (Linux Server, Windows Server или Generic Switch/Route).
В случае автоматического поиска устройств необходимо задать диапазон IP адресов, указать пароль root для доступа к Unix-системам через SSH или пароль администратора Windows. Локальная система будет добавлена автоматически. Также имеется возможность отказаться от добавления устройств на этом этапе -
После чего попадаем на панель Zenoss -
На этом я заканчиваю первую часть статьи. Во второй части рассмотрим настройку snmp для клиентов, интерфейс zenoss, плагины и другие возможности системы.
Немного пояснений:
Если автозапуск не происходит, то необходимо добавить:
sudo update-rc.d zenoss-stack enable S
В правилах межсетевого экрана необходимо открыть порты 8080(вэб-интерфейс Zenoss), 514 (Syslog), 162 (SNMP), 22 (SSH)
На удаленных хостах должны быть открыты порты 22 (SSH) и 161 (SNMP).
При использовании deb-пакета -
wget http://downloads.sourceforge.net/zenoss/zenoss-stack_3.2.0_i386.deb
sudo dpkg -i ./zenoss-stack_3.2.0_i386.deb
Интересное на сайте:
Голосов пока нет