3.7.2 Настройка сервера и агента ZABBIX (для РЕД ОС 7.3)
Предварительная подготовка сервера
Настройка сервера
Настройка сервера на PostgreSQL
Настройка сервера на PostgreSQL. Установка и настройка zabbix
Настройка сервера на PostgreSQL. Настройка базы данных
Настройка сервера на PostgreSQL. Запуск процесса zabbix-сервера
Настройка сервера на PostgreSQL 13 для zabbix 6
Настройка сервера на PostgreSQL 13 для zabbix 6. Установка и настройка zabbix 6
Настройка сервера на PostgreSQL 13 для zabbix 6. Настройка базы данных
Настройка сервера на PostgreSQL 13 для zabbix 6. Запуск процесса zabbix-сервера
Настройка сервера на PostgreSQL. Настройка из веб-интерфейса
Настройка сервера на MYSQL
Настройка сервера на MYSQL. Настройка базы данных
Настройка сервера на MYSQL. Запуск процесса zabbix-сервера
Настройка сервера на MYSQL. Настройка из веб-интерфейса
Настройка zabbix-agent
Добавление zabbix-agent
Окружение
- Версия РЕД ОС: 7.3.1
- Конфигурация: Сервер графический
- Версия ПО: ZABBIX 5.4.7-1
Zabbix - это программное обеспечение для мониторинга многочисленных параметров сети, жизнеспособности и целостности серверов. Zabbix использует гибкий механизм оповещений, что позволяет пользователям конфигурировать уведомления практически для любого события и быстро реагировать на проблемы с серверами. Zabbix предлагает отличные функции отчетности и визуализации данных, основанные на данных истории. Это делает zabbix идеальным для планирования мощности и мониторинга состояния серверов.
Zabbix разделяется на два вида: zabbix-agent и zabbix-server.
Zabbix-server собирает данные со всех клиентов, обрабатывает их, выводя на экран в веб-интерфейсе, и рассылает уведомления.
Zabbix-agent установлен на серверах, с которых необходимо собирать информацию об их состоянии, таких агентов может быть множество.
Предварительная подготовка сервера
Перейдите в сеанс пользователя root:
su -
Здесь и далее команды будут выполняться с правами пользователя root, если не указано иное.
1. На время установки переведите selinux в режим уведомлений.
На время настройки сервиса переведите selinux в режим уведомлений. Для этого измените содержимое конфигурационного файла:
nano /etc/selinux/config
Заменив текст
SELINUX=enforcing
на
SELINUX=permissive
Выполните:
setenforce 0
Более подробно см.ссылку.
После настройки Zabbix необходимо применить политику:
setsebool -P httpd_can_network_connect on setsebool -P httpd_can_network_connect_db on
И вернуть Selinux в режим enforcing.
2. Обновите систему.
dnf update -y
3. Установите следующие пакеты и добавьте пакет httpd в автозагрузку.
dnf install httpd zabbix-apache-conf zabbix-sql-scripts systemctl enable httpd
Настройка сервера
Существует 2 варианта настройки zabbix-сервера:
на СУБД postgresql;
на СУБД mariadb (mysql).
Настройка сервера на PostgreSQL
1. Установите сервер баз данных postgresql и добавьте его в автозагрузку:
dnf install postgresql postgresql-server systemctl enable postgresql
2. Выполните инициализацию нового сервера баз данных postgresql:
/usr/bin/postgresql-setup initdb
3. Запустите postgres:
systemctl start postgresql
Установка и настройка zabbix
Установите zabbix:
dnf install zabbix-server-pgsql zabbix-web-pgsql zabbix-agent zabbix-sql-scripts
Далее необходимо отредактировать файл php.ini:
nano /etc/php.ini
Приведите параметры к следующему виду:
date.timezone = Europe/Moscow #обязательно укажите свой часовой пояс
post_max_size = 16M max_execution_time = 300 max_input_time = 300
и сохраните изменения.
Настройка базы данных PostgreSQL
Сначала нужно создать пользователя и базу данных, для этого необходимо выполнить команду:
su postgres
и подключиться к серверу базы данных:
psql
Затем создайте пользователя и базу данных с именем zabbix и предоставьте пользователю права на использование данной БД (пароль укажите свой):
CREATE ROLE zabbix WITH NOSUPERUSER LOGIN PASSWORD 'zabbixpassword'; CREATE DATABASE zabbix WITH OWNER zabbix; GRANT ALL PRIVILEGES ON DATABASE zabbix TO zabbix;
Будет создан пользователь с именем zabbix, паролем zabbixpassword и база данных с именем zabbix.
При выполнении команд получится следующее:
postgres=# CREATE ROLE zabbix WITH NOSUPERUSER LOGIN PASSWORD 'zabbixpassword'; CREATE ROLE postgres=# CREATE DATABASE zabbix WITH OWNER zabbix; CREATE DATABASE postgres=# GRANT ALL PRIVILEGES ON DATABASE zabbix TO zabbix; GRANT
Проверьте, что таблицы создались:
\l
Отключитесь от базы:
\q
Завершите сессию пользователя postgres:
exit
Затем необходимо перенастроить сам сервер postgresql:
nano /var/lib/pgsql/data/postgresql.conf
Найдите строку:
listen_addresses = 'localhost'
и приведите ее к виду:
listen_addresses = '*'
Затем раскомментируйте строку:
#port = 5432
и сохраните изменения.
После этого необходимо предоставить права доступа пользователю zabbix к базе данных по паролю, для этого требуется отредактировать другой файл:
nano /var/lib/pgsql/data/pg_hba.conf
найдите строку:
host replication all 127.0.0.1/32 ident
и перед ней добавьте запись, чтобы выглядело следующим образом:
host zabbix zabbix 127.0.0.1/32 password host replication all 127.0.0.1/32 ident
Далее замените все ident на md5, конечный вариант файла:
# IPv4 local connections: host zabbix zabbix 127.0.0.1/32 password host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5 # Allow replication connections from localhost, by a user with the # replication privilege. local replication all peer host replication all 127.0.0.1/32 md5 host replication all ::1/128 md5
Перезапустите сервер postgresql:
systemctl restart postgresql
Импортируйте содержимое SQL-дампа в базу данных:
zcat /usr/share/doc/zabbix-sql-scripts/postgresql/create.sql.gz | sudo -u zabbix psql zabbix
Сменить пароль psql можно так:
passwd postgres
На этом настройка базы данных закончена, осталось настроить zabbix-сервер.
Отредактируйте файл конфигурации сервера zabbix. Пропишите данные для подключения к базе данных:
nano /etc/zabbix/zabbix_server.conf
Измените строки (их нужно раскомментировать, если они закоментированы, и присвоить нужные значения, если их нет или они отличаются):
DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbixpassword
Запуск процесса zabbix-сервера
Запустите zabbix-сервер и добавьте его в автозагрузку:
systemctl restart zabbix-server systemctl enable zabbix-server systemctl restart zabbix-agent systemctl enable zabbix-agent systemctl restart httpd
Настройка сервера на PostgreSQL 13 для zabbix 6
Для zabbix 6 требуется postgresql 13 и выше. Рассмотрим на примере postgresql 13.
1. Установите сервер баз данных postgresql и добавьте его в автозагрузку:
dnf install postgresql13 postgresql13-server systemctl enable postgresql-13
2. Выполните инициализацию нового сервера баз данных postgresql:
/usr/bin/postgresql-13-setup initdb
3. Запустите postgres:
systemctl start postgresql-13
Установка и настройка zabbix 6
Установите zabbix:
dnf install zabbix-server-pgsql zabbix-web-pgsql zabbix-agent
Далее необходимо отредактировать файл php.ini:
nano /etc/php.ini
Приведите параметры к следующему виду:
date.timezone = Europe/Moscow #обязательно укажите свой часовой пояс
post_max_size = 16M max_execution_time = 300 max_input_time = 300
и сохраните изменения.
Настройка базы данных PostgreSQL
Сначала нужно создать пользователя и базу данных, для этого необходимо выполнить команду:
su postgres
и подключиться к серверу базы данных:
psql
Затем создайте пользователя и базу данных с именем zabbix и предоставьте пользователю права на использование данной БД (пароль укажите свой):
CREATE ROLE zabbix WITH NOSUPERUSER LOGIN PASSWORD 'zabbixpassword'; CREATE DATABASE zabbix WITH OWNER zabbix; GRANT ALL PRIVILEGES ON DATABASE zabbix TO zabbix;
Будет создан пользователь с именем zabbix, паролем zabbixpassword и база данных с именем zabbix.
При выполнении команд получится следующее:
postgres=# CREATE ROLE zabbix WITH NOSUPERUSER LOGIN PASSWORD 'zabbixpassword'; CREATE ROLE postgres=# CREATE DATABASE zabbix WITH OWNER zabbix; CREATE DATABASE postgres=# GRANT ALL PRIVILEGES ON DATABASE zabbix TO zabbix; GRANT
Проверьте, что таблицы создались:
\l
Отключитесь от базы:
\q
Завершите сессию пользователя postgres:
exit
Затем необходимо перенастроить сам сервер postgresql:
nano /var/lib/pgsql/13/data/postgresql.conf
Найдите строку:
listen_addresses = 'localhost'
и приведите ее к виду:
listen_addresses = '*'
Затем раскомментируйте строку:
#port = 5432
и сохраните изменения.
После этого необходимо предоставить права доступа пользователю zabbix к базе данных по паролю, для этого требуется отредактировать другой файл:
nano /var/lib/pgsql/13/data/pg_hba.conf
найдите строку:
host replication all 127.0.0.1/32 ident
и перед ней добавьте запись, чтобы выглядело следующим образом:
host zabbix zabbix 127.0.0.1/32 password host replication all 127.0.0.1/32 ident
Далее замените все scram-sha-256 на md5, конечный вариант файла:
local all all peer # IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5 # Allow replication connections from localhost, by a user with the # replication privilege. local replication all peer host zabbix zabbix 127.0.0.1/32 password host replication all 127.0.0.1/32 md5 host replication all ::1/128 md5
Перезапустите сервер postgresql:
systemctl restart postgresql-13
Импортируйте содержимое SQL-дампа в базу данных:
zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix
Сменить пароль psql можно так:
passwd postgres
На этом настройка базы данных закончена, осталось настроить zabbix-сервер.
Отредактируйте файл конфигурации сервера zabbix. Пропишите данные для подключения к базе данных:
nano /etc/zabbix/zabbix_server.conf
Измените строки (их нужно раскомментировать, если они закоментированы, и присвоить нужные значения, если их нет или они отличаются):
DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbixpassword
Запуск процесса zabbix-сервера
Запустите zabbix-сервер и добавьте его в автозагрузку:
systemctl restart zabbix-server systemctl enable zabbix-server systemctl restart zabbix-agent systemctl enable zabbix-agent systemctl restart httpd
Настройка из веб-интерфейса
- Для того чтобы войти в веб-интерфейс, укажите в адресной строке браузера http://<ip-адрес_сервера>/zabbix.
Откроется страница приветствия.
Выберете язык и нажмите «Далее»
- Затем вы попадете на страницу преднастроек. Если вы ранее указали временную зону, то во всех пунктах должно быть «ОК».
Нажмите «Далее».
- Укажите данные для подключения к ранее созданной базе данных.
В поле:
Database host — укажите адрес сервера 127.0.0.1;
Database port — стандартный порт postgres 5432;
Database name — имя базы данных zabbix;
User — логин пользователя zabbix;
Password — пароль пользователя zabbixpassword.
Нажмите «Далее». При неправильно указанных данных или неправильной конфигурации базы данных появится сообщение об ошибке подключения к базе.
- В следующем окне нужно ввести IP-адрес хоста сервера zabbix и номер порта для его работы. Можно оставить значения по умолчанию.
Нажмите «Далее».
- Проверьте часовой пояс и нажмите «Далее».
- Проверьте правильность введенных данных и нажмите «Далее».
- При успешном окончании установки вы увидите следующую страницу.
Нажмите «Финиш».
- Введите логин и пароль сервера zabbix. По умолчанию имя пользователя - Admin (регистр важен), пароль - zabbix.
Нажмите «Войти».
Вы попадете в панель управления. На этом настройка zabbix на PSQL завершена.
Настройка сервера на MYSQL
1.Установите пакет для работы базами данных и включите его в автозагрузку:
dnf install mariadb mariadb-server zabbix-server-mysql zabbix-agent systemctl start mariadb systemctl enable mariadb.service mysql_secure_installation
Настройка базы данных MYSQL
1. Создайте пользователя и базу данных для мониторинга:
mysql -uroot -pmasterkey > create database zabbix character set utf8 collate utf8_bin; > grant all privileges on zabbix.* to zabbix@localhost identified by 'zabpassword'; > quit;
Создается база данных в /var/lib/mysql/zabbix, где:
masterkey - пароль пользователя root mysql, это не системный root;
zabpassword -пароль пользователя zabbix, у которого полный доступ к базе mysql zabbix.
2. Импортируйте схему базы данных и начальные данные.
Импортируйте содержимое SQL-дампа в базу данных следующим образом:
zcat /usr/share/doc/zabbix-sql-scripts/mysql/create.sql.gz | mysql -uzabbix -pzabpassword zabbix
Для zabbix 6:
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -uzabbix -pzabpassword zabbix
3. После этого отредактируйте файл конфигурации сервера zabbix. Пропишите данные для подключения к базе данных:
nano /etc/zabbix/zabbix_server.conf
Измените строки (их нужно раскоментировать, если они закоментированы, и присвоить нужные значения, если их нет или они отличаются):
DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabpassword
4. Также необходимо отредактировать файл:
nano /etc/php.ini
Приведите параметры к следующему виду (аналогичные параметры есть в /etc/httpd/conf.d/zabbix.conf - они должны соответствовать):
date.timezone = Europe/Moscow # обязательно укажите свой часовой пояс!
post_max_size = 16M max_execution_time = 300 max_input_time = 300
5. Запустите zabbix и httpd:
systemctl restart httpd systemctl restart zabbix-server
Произведите проверку логов на предмет ошибок:
cat /var/log/zabbix/zabbix_server.log
Запуск процесса zabbix-сервера
Запустите zabbix-сервер и добавьте его в автозагрузку:
systemctl restart zabbix-server systemctl enable zabbix-server systemctl restart zabbix-agent systemctl enable zabbix-agent systemctl restart httpd
Настройка из веб-интерфейса
- Для того чтобы войти в веб-интерфейс, укажите в адресной строке браузера http://<ip-адрес_сервера>/zabbix.
Откроется страница приветствия.
Выберете язык и нажмите «Далее».
- Далее вы попадете на страницу преднастроек. Если вы ранее указали временную зону, то во всех пунктах должно быть «ОК».
Нажмите «Далее».
- Укажите данные для подключения к ранее созданной базе данных.
В поле:
Database host — укажите адрес сервера 127.0.0.1;
Database port — стандартный порт MYSQL (3306);
Database name — имя базы данных zabbix;
User — логин пользователя zabbix;
Password — пароль пользователя zabpassword.
Нажмите «Далее». При неправильно указанных данных или неправильной конфигурации базы данных появится сообщение об ошибке подключения к базе.
- В следующем окне нужно ввести IP-адрес хоста сервера zabbix и номер порта для его работы. Можно оставить значения по умолчанию.
Нажмите «Далее».
Проверьте часовой пояс и нажмите «Далее».
- Проверьте правильность введенных данных и нажмите «Далее».
- При успешном окончании установки вы увидите следующую страницу.
Нажмите «Финиш».
- Введите логин и пароль сервера zabbix. По умолчанию имя пользователя - Admin (регистр важен), пароль - zabbix.
Нажмите «Войти».
Вы попадете в панель управления. На этом настройка zabbix на MYSQL завершена.
Настройка zabbix-agent
На сервере, который необходимо отслеживать, выполните следующие действия:
1. Установите zabbix-agent:
dnf install zabbix-agent
2. Настройте файл конфигурации:
nano /etc/zabbix/zabbix_agentd.conf
По умолчанию достаточно просто прописать IP-адрес сервера мониторинга:
Server=<ip-адрес_сервера>
3. Запустите сервис и добавьте его в автозапуск:
systemctl enable zabbix-agent systemctl start zabbix-agent systemctl status zabbix-agent
Добавление zabbix-agent
В веб-интерфейсе zabbix-сервера добавьте новый узел в меню «Настройки» - «Узлы сети» - «Создать узел сети».
Далее впишите имя узла, укажите группу, в которой он должен состоять, пропишите ip- или dns-адрес и нажмите кнопку «Добавить».
На этом настройка zabbix-агента успешно завершена.
Более подробную информацию о zabbix можно найти на официальном сайте.
Дата последнего изменения: 22.05.2023
Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.