Системы мониторинга серверов и сетевых устройств играют одну из ключевых ролей в поддержании инфраструктуры в исправном состоянии и потому к выбору, развертыванию и конфигурированию системы мониторинга в вашей организации стоит подойти как можно серьезнее. Платные системы мониторинга инфраструктуры стоят достаточно больших денег и не для всех организаций могут подойти. Взять лишь один System Center от Microsoft – порядка 8 разных продуктов, каждый из которых надо ставить на отдельный сервер, да и к тому же необходимость в полнофункциональном MS SQL Server обойдется в круглую сумму, а ведь это даже без стоимости железа (надо отметить, тот же Operations Manager требует очень серьезные ресурсы). Возникает вопрос существует ли оптимальные по функционалу бесплатные системы мониторинга? Ответ – да и таких систем достаточно много. В этой статье речь пойдет об установке одной из таких систем. Хочу сразу оговориться, что я не буду рассматривать преимущества и недостатки, а сконцентрируюсь только на установке. Чуть не забыл, речь пойдет о системе мониторинга ZABBIX версии 2.4.3.
Если вам интересна тематика ZABBIX, рекомендую обратиться к основной статье – Система мониторинга ZABBIX, в ней вы найдете дополнительную информацию.
UPD 27.02.2016: Сегодня вышла новая статья по установке ZABBIX из исходных кодов, но теперь уже на Debian 8 – Установка ZABBIX на Debian 8 Jessie. Прочитайте её, ведь процесс установки немного отличается.
Исходные данные
Имеем виртуальную машину, работающую под управлением Hyper-V. На виртуалке установлен Debian 7.7.
Настройка системы была произведена по моим предыдущим статьям: “Debian. Начальная настройка системы“, “Debian. Установка системы на виртуальную машину“.
Все остальные необходимые данные будут даны в процессе установки ZABBIX. Весь процесс установки представляет собой выполнение цепи последовательных задач точно в той последовательности, в которой они встретятся, если ваши исходные данные будут соответствовать моим (речь идет об исходном дистрибутиве системы, его конфигурации, начальных настройках, версии дистрибутива ZABBIX и т.п.).
Установка ZABBIX на Debian 7
Качаем исходники:
root@debian7:~# wget http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.4.3/zabbix-2.4.3.tar.gz?r=&ts=1421131436&use_mirror=kent
В принципе вы можете скачать другую версию и с других источников.
Распакуем
root@debian7:~# tar -zxvf zabbix-2.4.3.tar.gz
Создаем пользователя и группу:
root@debian7:~# groupadd zabbix
root@debian7:~# useradd -g zabbix zabbix
root@debian7:~# passwd zabbix
Ставим СУБД::
root@debian7:~# apt-get install mysql-server
В процессе установки введите пароль для root’а.
Создаем пустую базу данных:
root@debian7:~# mysql -u root -p
mysql> create database zabbix character set utf8;
mysql> grant usage on *.* to zabbix@localhost identified by ‘тут_введите_пароль’;
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> flush privileges;
mysql> quit;
Создаем необходимую структуру БД и добавляем начальные данные:
root@debian7:~# mysql -uzabbix -pпароль zabbix < /root/zabbix-2.4.3/database/mysql/schema.sql
root@debian7:~# mysql -uzabbix -pпароль zabbix < /root/zabbix-2.4.3/database/mysql/images.sql
root@debian7:~# mysql -uzabbix -pпароль zabbix < /root/zabbix-2.4.3/database/mysql/data.sql
Подробнее в главе “1 Скрипты создания базы данных” официального руководства.
Перейдем в папку с распакованным zabbix:
root@debian7:~# cd zabbix-2.4.3/
Конфигурируем исходные коды:
root@debian7:~/zabbix-2.4.3# ./configure –enable-server –enable-agent –with-mysql –enable-ipv6 –with-net-snmp –with-libcurl –with-jabber –with-ssh2 –with-openipmi
Подробнее о всех ключах можно узнать с помощью команды:
root@debian7:~/zabbix-2.4.3# ./configure –help
Получаем ошибку:
configure: error: no acceptable C compiler found in $PATH
Решаем проблему установкой набора компиляторов (gcc – GNU Compiler Collection):
root@debian7:~/zabbix-2.4.3# apt-get install gcc
Запускаем снова конфигурирование:
Получаем ошибку:
configure: error: MySQL library not found
Решение тут.
root@debian7:~/zabbix-2.4.3# apt-get install libmysqlclient-dev
Ещё разок конфигурируем:
Опять ошибка:
checking for IKSEMEL… configure: error: Jabber library not found
решаем проблему:
root@debian7:~/zabbix-2.4.3# apt-get install libiksemel-dev
Опять конфигурируем исходные коды:
Ошибка:
checking for IKSEMEL… configure: error: Jabber library not found
Предыдущее решение не помогло, ищем другое. Нашел в теме форума “configure: error: Not found Jabber library“.
Решаем проблему:
root@debian7:~/zabbix-2.4.3# apt-get install libcurl4-openssl-dev
Ещё раз:
И опять ошибка:
configure: error: Invalid Net-SNMP directory – unable to find net-snmp-config
решаем проблему:
root@debian7:~/zabbix-2.4.3# apt-get install libsnmp-dev
И ещё:
Ошибка:
configure: error: Invalid OPENIPMI directory – unable to find ipmiif.h
решаем проблему:
root@debian7:~/zabbix-2.4.3# apt-get install libopenipmi-dev
Ещё раз запускаем конфигурирование исходных кодов:
Все ок. Смотрим как должно быть:
Теперь можно и собрать исходные коды. Но сначала поставим утилиту управления компиляцией:
root@debian7:~/zabbix-2.4.3# apt-get install make
Долгожданная сборка:
root@debian7:~/zabbix-2.4.3# make install
Пришло время отредактировать конфиги:
root@debian7:~/zabbix-2.4.3# nano /usr/local/etc/zabbix_server.conf
Задаем параметры:
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=Пароль_который_ввел_раньше
Запускаем демон:
root@debian7:~/zabbix-2.4.3# zabbix_server
Ставим apache и php:
root@debian7:~/zabbix-2.4.3# apt-get install apache2
root@debian7:~/zabbix-2.4.3# apt-get install php5
Создаем отдельный каталог для сайта zabbix:
root@debian7:~/zabbix-2.4.3# mkdir /var/www/zabbix
root@debian7:~/zabbix-2.4.3# cd frontends/php
(полный путь у меня будет /root/zabbix-2.4.3/frontends/php)
root@debian7:~/zabbix-2.4.3/frontends/php# cp -a . /var/www/zabbix
Начинаем установку веб-интерфейса:
Нажимаем “Далее” и видим:
Если в списке требований не везде стоит “ОК”, меняем требуемые параметры в конфиге:
root@debian7:~# nano /etc/php5/apache2/php.ini
Насчет “php time zone” – нужно в вышеуказанном файле явно указать значение:
date.timezone = Europe/Moscow
“PHP databases support” – необходимо поставить php5-mysql
root@debian7:~# apt-get install php5-mysql
PHP gd, PHP gd PNG support, PHP gd JPEG support, PHP gd FreeType support – ставим модуль GD для PHP:
root@debian7:~# apt-get install php5-gd
Перезапускаем apache:
root@debian7:~# service apache2 restart
Обновляем страницу в браузере:
Настраиваем подключение к базе данных и сразу проверяем соединение:
Идем дальше:
Оставляем как есть и продолжаем:
Проверяем итоговую информацию и переходим к завершению:
“Финиш” – переходим к странице доступа:
Логин/пароль по умолчанию: Admin/zabbix
Меняем язык: в веб-интерфейсе справа вверху – Profile – ниже можно сменить язык.
На этом установка ZABBIX на Debian 7 завершена.
Далее предлагаю перейти сразу к дальнейшей настройке системы мониторинга:
ZABBIX. Настройка e-mail-рассылки
ZABBIX. Настройка автозапуска сервера и агента
При написании статьи, помимо упомянутых ранее, пользовался следующими источниками: