Zabbix – это средство для мониторинга серверов и программ, которое можно использовать для отслеживания нескольких физических или виртуальных выделенных серверов.
Модель «клиент-сервер», на которой основан Zabbix, позволяет собирать обширные наборы данных о сервере, которые можно использовать для создания диаграмм. Это позволяет следить за производительностью веб-сайтов и приложений, размещенных на VPS.
В данном руководстве показано, как настроить для использования Zabbix сервер и клиент Ubuntu 12.04 LTS.
Установка сервера Zabbix
Сначала нужно установить Zabbix на сервер.
Пакеты Zabbix доступны в репозиториях Ubuntu, но они устаревшие, потому лучше использовать PPA.
Отредактируйте список исходников системы:
sudo nano /etc/apt/sources.list
Чтобы добавить PPA, вставьте в конец файла следующие стоки:
# Zabbix Application PPA
deb http://ppa.launchpad.net/tbfr/zabbix/ubuntu precise main
deb-src http://ppa.launchpad.net/tbfr/zabbix/ubuntu precise main
Сохраните и закройте файл.
Затем нужно добавить ключ PPA:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys C407E17D5F76A32B
Теперь можно установить Zabbix. Следующая команда также установит зависимости (стек LAMP):
sudo apt-get update
sudo apt-get install zabbix-server-mysql php5-mysql zabbix-frontend-php
Во время установки программа предложит выбрать root пароль MySQL.
Настройка сервера Zabbix
Отредактируйте главный конфигурационный файл Zabbix. Откройте его с правами root:
sudo nano /etc/zabbix/zabbix_server.conf
Найдите следующие параметры; некоторые из них могут уже содержать правильные данные, а некоторые нужно отредактировать. Не забудьте выбрать пароль:
DBName=zabbix
DBUser=zabbix
DBPassword=Your.Password.Here
Сохраните и закройте файл.
Настройка MySQL
Откройте следующий каталог и распакуйте файлы SQL:
cd /usr/share/zabbix-server-mysql/
sudo gunzip *.gz
После этого нужно будет импортировать файлы SQL в БД. Но прежде нужно подготовить саму БД.
Откройте сессию root MySQL:
mysql -u root -p
Создайте пользователя для Zabbix. Данные об этом пользователе должны совпадать с данными, указанными ранее в файле /etc/zabbix/zabbix_server.conf.
create user 'zabbix'@'localhost' identified by 'Your.Password.Here';
Затем создайте БД для Zabbix.
create database zabbix;
Передайте права на новую БД пользователю zabbix:
grant all privileges on zabbix.* to 'zabbix'@'localhost';
Обновите привилегии:
flush privileges;
БД готова. Закройте MySQL:
exit;
Теперь можно импортировать файлы, необходимые для корректной работы Zabbix. При этом будет запрошен пароль пользователя zabbix.
mysql -u zabbix -p zabbix < schema.sql
Также нужно импортировать файлы images и data:
mysql -u zabbix -p zabbix < images.sql
mysql -u zabbix -p zabbix < data.sql
Настройка PHP
Теперь нужно настроить PHP для обработки собранных данных. Откройте конфигурационный файл:
sudo nano /etc/php5/apache2/php.ini
Найдите и отредактируйте следующие строки; если их не существует, скопируйте и вставьте их:
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone = UTC
Сохраните и закройте файл.
После этого нужно добавить специальный php-файл для Zabbix в каталог настроек:
sudo cp /usr/share/doc/zabbix-frontend-php/examples/zabbix.conf.php.example /etc/zabbix/zabbix.conf.php
Откройте файл:
sudo nano /etc/zabbix/zabbix.conf.php
Отредактируйте в нём следующие значения (укажите ту же информацию о БД):
$DB['DATABASE'] = 'zabbix';
$DB['USER'] = 'zabbix';
$DB['PASSWORD'] = 'Your.Password.Here'
Сохраните и закройте файл.
Дополнительные файлы
Также нужно настроит несколько дополнительных файлов.
Переместите файл Zabbix для apache:
sudo cp /usr/share/doc/zabbix-frontend-php/examples/apache.conf /etc/apache2/conf.d/zabbix.conf
Убедитесь, что режим alias включен:
sudo a2enmod alias
Перезапустите Apache, чтобы получить доступ к новому конфигурационному файлу:
sudo service apache2 restart
Отредактируйте init-файл Zabbix:
sudo nano /etc/default/zabbix-server
В конце файла найдите параметр START и задайте значение yes:
START=yes
Сохраните и закройте файл. Запустите Zabbix:
sudo service zabbix-server start
Установка и настройка клиента Zabbix
Далее нужно настроить программное обеспечение клиента (Zabbix Agent), данные о котором будет собирать сервер Zabbix. При этом нужно будет изменить некоторые настройки и на сервере Zabbix.
Выполните следующие действия и на сервере, и на клиенте Zabbix. В случае необходимости отредактируйте команды и укажите свои данные.
Для начала нужно установить агент:
sudo apt-get update
sudo apt-get install zabbix-agent
После этого нужно обновить конфигурационные файлы:
sudo nano /etc/zabbix/zabbix_agentd.conf
Отредактируйте параметр Server, указав IP-адрес сервера Zabbix. Для настройки агента можно использовать 127.0.0.1.
Server=Zabbix.Server.IP.Address
В параметре Hostname укажите имя хоста машины, которую будет мониторить Zabbix.
Hostname=Hostname_Of_Current_Machine
Сохраните и закройте файл.
Перезапустите агент:
sudo service zabbix-agent restart
Запуск Zabbix
Откройте браузер, укажите IP-адрес сервера Zabbix и добавьте раздел /zabbix.
Your.Zabbix.IP.Address/zabbix
На экране появится страница входа. Учётные данные по умолчанию:
Username = admin
Password = zabbix
В верхней навигационной панели выберите Configuration → Hosts.
На экране появится таблица. Кликните по имени сервера (по умолчанию это Zabbix server), чтобы открыть страницу настройки хоста.
Отредактируйте Hostname, указав имя хоста сервера Zabbix (оно должно совпадать с именем хоста в настройках агента).
В конце страницы измените параметр Status на Monitored. Сохраните изменения.
После этого вы вернётесь на страницу Hosts configuration. Снова кликните по имени хоста и нажмите Clone.
Эти настройки нужно будет немного отредактировать, указав данные клиента. Измените hostname и IP-адрес (эти данные должны совпадать с настройками агента).
В разделе groups выберите Zabbix servers и нажмите значок со стрелкой вправо, чтобы удалить эту группу. Затем выберите Linux servers и нажмите на значок со стрелкой влево, чтобы добавить эту группу.
Кликните Save.
В течение нескольких минут обе машины должны появиться в списке Monitoring → Latest data.
Чтобы просмотреть данные о машине, кликните на стрелочку рядом с именем машины.
Чтобы просмотреть график, кликните Graph.