Установка zabbix
Установка zabbix из исходников
Информацию об установке из исходников брать как отсюда:
https://www.zabbix.com/documentation/2.2/manual/installation/install
так и отсюда:
https://www.zabbix.com/documentation/2.2/manual/installation/install_from_packages
Почему-то в каждом из этих разделов есть места, в которых предполагается, что Вы знаете, как сделать ту или иную вещь, поскольку прочитали другой раздел zabbix.
Для установки zabbix Вам необходимо выполнить следующие действия:
- Создать пользователя и группу, от имени которого будет работать демон zabbix
- Установить и настроить mysql (создать базу данных, создать пользователя этой БД)
- Установить компоненты, необходимые для сборки zabbix
- Скачать, сконфигурировать, собрать и установить zabbix
- Создать таблицы в БД для zabbix
- Сконфигурировать сервер zabbix (отредактировать zabbix_server.conf)
- Настроить сервис для сервера zabbix
- Сконфигурировать агент zabbix (отредактировать zabbix_agentd.conf)
- Настроить сервис для клиента zabbix
- Настроить iptables
- Отключить SELinux
- Установить и настроить компоненты для веб-интерфейса zabbix
- Произвести первоначальную настройку zabbix
Создание пользователя и группы, от имени которого будет работать демон zabbix
Создайте пользователя zabbix и группу zabbix, от имени которых будет запускаться демон zabbix. Пароль можно также выставить zabbix. Как создать пользователя и группу, читайте здесь.
установка и настройка mysql
Необходимо установить сервер MySQL, клиент MySQL и библиотеки для поддержки MySQL при компиляции zabbix (mysql development). Необходимо также создать базу данных zabbix и пользователя для этой базы данных, которого также зовут zabbix (пароль ему также можно задать zabbix, хотя желательно использовать более сложный). Подробнее об установке MySQL читайте статью "Установка и первоначальная настройка MySQL".
Установка компонентов, необходимых для сборки zabbix
Для сборки zabbix необходимо, чтобы в Вашей системе уже присутствовали компоненты make, gcc. Для этого в системе RHEL / CentOS запустите команду:
yum install gcc make
Если Вы планируете использовать опрос устройств через интерфейс SNMP, необходимо поставить соответствующий компонент:
yum install net-snmp-devel
Скачивание, распаковка и установка zabbix
Скачать zabbix можно отсюда: http://www.zabbix.com/download.php. В разделе "Zabbix stable" найдите секцию zabbix sources и скачайте с помощью команды wget. При скачивании у Вас получится файл с длинным именем, рекомендуем его переименовать:
mv zabbix.x.y.z.tar.gz...... zabbix.tar.gz
Теперь распакуйте архив:
tar -xvzf zabbix.tar.gz
и перейдите в папку:
cd zabbix-x.y.z
например:
cd zabbix-2.2.3
А теперь конфигурируем zabbix.
Если нам не нужна поддержка SNMP:
./configure --enable-server --enable-agent --with-mysql
Если нам нужна поддержка SNMP:
./configure --enable-server --enable-agent --with-mysql --with-net-snmp
И устанавливаем:
make install
Создание таблиц БД для zabbix
Предполагаем, что Вы находитесь в папке с исходными кодами zabbix, в корне этой папки.
Переходим в подпапку database/mysql:
cd database/mysql
Запускаем команды импорта баз в mysql, для этого из командной строки запустите:
mysql -u root -p zabbix < schema.sql
mysql -u root -p zabbix < images.sql
mysql -u root -p zabbix < data.sql
Опции:
"-u root" - это пользователь mysql по имени root
"-p zabbix"
- это база данных по имени zabbix
После запуска каждой из этих команд будет запрошен пароль пользователя root MySQL.
Конфигурирование сервера zabbix
Для этого необходимо отредактировать файл zabbix_server.conf. После установки zabbix 2.2 на RHEL / CentOS этот файл находится здесь: /usr/local/etc/zabbix_server.conf
При редактировании необходимо указать / раскомментировать:
- DBHost - сервер базы данных, оставьте по умолчанию localhost
- DBName - имя базы данных
- DBUser / DBPassword - имя пользователя и пароль для доступа к БД
Вы также можете указать (это необязательно):
- LogFile - путь к логам сервера zabbix
Настройка сервиса для сервера zabbix
Дело в том, что для RHEL / CentOS (в отличие от многих других систем) при установке не создается сооветствующий сервис zabbix. Создадим его вручную. Для этого:
- Перейдите в папку исходников сервера zabbix
- Перейдите в подпапку misc/init.d/fedora/core.5
- Скопируйте файл zabbix_server из этой папки в папку /etc/init.d
- Попробуйте запустить сервис zabbix:
service zabbix_server start
- Если запустилось нормально (если ненормально, то пробуйте другие скрипты из папки misc/init.d), то настройте автозапуск сервиса:
chkconfig zabbix_server on
- Если система выругается, что такой сервис надо сначала добавить - то добавьте:
chkconfig zabbix_server -add
а затем повторите с пункта 5
Конфигурирование клиента zabbix
Для настройки клиента zabbix необходимо отредактировать файл zabbix_agentd.conf. После установки zabbix 2.2 на RHEL / CentOS этот файл находится здесь: /usr/local/etc/zabbix_agentd.conf
При редактировании необходимо указать / раскомментировать:
- Server - укажите здесь IP адрес сервера zabbix, в данном случае это 127.0.0.1:
Server=127.0.0.1
- ServerActive - укажите здесь IP адрес сервера zabbix для активных проверок, в данном случае это также 127.0.0.1:
ServerActive=127.0.0.1
- Hostname - имя клиента zabbix, здесь также 127.0.0.1
Вы также можете указать (это необязательно):
- LogFile - путь к логам клиента zabbix
- EnableRemoteCommands - возможность выполнять удаленные команды от zabbix сервера
- LogRemoteCommands - результаты выполнения удаленных команд сохранять в логах
Настройка сервиса для агента zabbix
Дело в том, что для RHEL / CentOS (в отличие от многих других систем) при установке не создается сооветствующий сервис zabbix. Создадим его вручную. Для этого:
- Перейдите в папку исходников сервера zabbix
- Перейдите в подпапку misc/init.d/fedora/core.5
- Скопируйте файл zabbix_agentd из этой папки в папку /etc/init.d
- Попробуйте запустить сервис zabbix:
service zabbix_agentd start
- Если запустилось нормально (если ненормально, то пробуйте другие скрипты из папки misc/init.d), то настройте автозапуск сервиса:
chkconfig zabbix_agentd on
- Если система выругается, что такой сервис надо сначала добавить - то добавьте:
chkconfig zabbix_agentd -add
а затем повторите с пункта 5
Настройка iptables
Проще всего выключить (и отключить автозапуск) службы iptbales. В RHEL / CentOS для этого выполните:
service iptables stop
chkconfig iptables off
Если же Вы хотите оставить работать iptables, то необходимо настроить следующее:
- порты 10050 и 10051 (как TCP, так и UDP) для входящих подключений
- порт 80 для web-сервера (веб-интерфейса zabbix)
- порт 3306 для MySQL (подключения можно ограничить только с localhost)
Настройка SELinux
Для работы сервера zabbix необходимо отключить SELinux. Для этого (для CentOS) в файле /etc/selinux/config найти строку, начинающуюся с SELINUX= и исправить ее следующим образом:
Установка и настройка компонентов для web-интерфейса zabbix
Для web-интерфейса zabbix нам необходим web-сервер (apache) с поддержкой php, который должен поддерживать работу с БД MySQL, математическими функциями и XML.
В системе RHEL / CentOS выполните команду:
yum install httpd php php-mysql php-bcmath php-gd php-mbstring php-xml
Создаем web-интерфейс zabbix:
- Перейдите в папку исходников zabbix
- Перейдите в подпапку frontends/php
- Скопируйте все файлы (и папки) из этой подпапки в папку zabbix на веб cервере apache. Для Apache 2.2 при установке в CentOS папка с HTML файлами будет /var/www/html. Т.е. Вам необходимо скопировать файлы из frontends/php в /var/www/html/zabbix
Настраиваем автоматический запуск необходимых служб apache и mysql при старте CentOS:
chkconfig httpd on
chkconfig mysqld on
После этого перезагрузите сервер и убедитесь, что Apache, MySQL, zabbix server и zabbix agent стартовали нормально.
Первоначальная настройка zabbix
Открываете адрес сервера zabbix в браузере:
http://ip-адрес-zabbix-сервера/zabbix
например:
http://192.168.1.55/zabbix
Если компоненты настроены правильно и запущены, должно появиться окно zabbix с приглашением к вводу логина и пароля.
По умолчанию логин и пароль для доступа следующие:
login: Admin
password: zabbix
При первоначальной настройке Вам может потребоваться настроить параметры php. Для php 5 в CentOS конфигурационный файл находится здесь: /etc/php.ini
Timezone указывается в следующем формате:
date.timezone = Europe/Moscow
После внесения всех необходимых изменений в конфигурацию php необходимо перезагрузить apache:
service httpd restart
После того, как ВСЕ необходимые условия выполнены, но до того, как перейте к следующему шагу, рекомендуем сменить права на папку zabbix на web-сервере, чтобы apache мог вносить изменения в файлы. Для этого:
- Посмотрите в файле /etc/httpd/conf/httpd.conf, от какого пользователя
стартует apache. Предположим, это пользователь apache и группа apache
- Выполняем команду:
chown -R пользователь:группа /var/www/html/zabbix
например:
chown -R apache:apache /var/www/html/zabbix
Теперь можете переходить к следующим шагам настройки zabbix.
На этом всё.
Вы также можете прочитать другую статью по настройке zabbix сервера: Zabbix 2.2 верхом на nginx + php-fpm и mariadb
|