26.10.2022

Как установить и настроить Zabbix на CentOS 8

В данной инструкции, мы установим систему мониторинга Zabbix 5 на CentOS 8. Системой управления базой данных будет Postgresql-12 и веб-сервер Nginx.

Установка обязательных пакетов для Zabbix

Давайте установим репозиторий Zabbiz и очистим кэш менеджера.

rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
dnf clean all

После добавления репозитория, мы можем начать установку обязательных пакетов.

dnf install zabbix-server-pgsql zabbix-web-pgsql zabbix-nginx-conf zabbix-agent

Установка Postgresql-12

Установим репозиторий Postgresql-12 и очистим кэш.

rpm -Uvh https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
dnf clean all

Отключим приустановку модуля DBMS .

dnf -qy module disable postgresql

After that set up the Postgresql-12 packages.

dnf -y install postgresql12 postgresql12-server

Теперь инициализируем базу данных.

/usr/pgsql-12/bin/postgresql-12-setup initdb

Теперь мы можем активировать службу и убедиться, что она включается при загрузке системы.

systemctl enable --now postgresql-12

Конфигурация базы данных

Создадим нового пользователя Postgresql для Zabbix. Введите пароль, где оно этого потребует.

sudo -u postgres createuser --pwprompt zabbix

После, создадим новую базу данных для работы с нашей системой мониторинга.

sudo -u postgres createdb -O zabbix zabbix

Давайте импортируем стартовую схему и информацию в базу данных. При появлении запроса введите пароль для недавно созданного пользователя и продолжите.

zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u zabbix psql zabbix

В файле /etc/zabbix/zabbix_server.conf  уберите комментарий с строчки DBPassword и введите пароль для того чтобы получить доступ к базе данных.

DBPassword=zabbix

Чтобы иметь возможность подклчиться к базе данных, откройте файл /var/lib/pgsql/12/data/pg_hba.conf и найдите строчки:

# IPv4 local connections:
host all all 127.0.0.1/32 ident

Измените метод на ваш пароль.

host all all 127.0.0.1/32 password

И перезапустите DBMS.

systemctl restart postgresql-12

Nginx configuration

Откройте файл /etc/nginx/conf.d/zabbix.conf и уберите комментарий с параметров listen и server_name. В последнем введите имя домена вашего сервера или _ если вы только хотите подключиться используя IP адрес.

server {
listen 80;
server_name _;
...

В последнем параметре, вам тоже нужно убрать комментарий со всей секции server в файле /etc/nginx/nginx.conf.

# server  {
#    listen    80 default_server;
#    listen    [::]:80 default_server;
#    server_name   _;
# root /usr/share/nginx/html;
...

В файле /etc/php-fpm.d/zabbix.conf уберите комментарий с параметра php_value[date.timezone] и установите ваш часовой пояс.

php_value[date.timezone] = Europe/Prague

Теперь перезапустите конфигурируемые приложения и сделаем так, чтобы они запускались при загрузке системы.

systemctl restart zabbix-server zabbix-agent nginx php-fpm
systemctl enable zabbix-server zabbix-agent nginx php-fpm

Настройка интерфейса Zabbix

Откройте IP адрес вашего сервера в браузере.

Скриншот 1. Встречающее окно Zabbix .

Проверьте если все ли правильно и нажмите OK, чтобы перейти на второй шаг.
На третьем шаге, введите 127.0.0.1 в меню Database Host  и пароль для базы данных в соответствующем поле.

Скриншот 2. Настройка базы данных.

Теперь следуйте до конца настройки и оставьте параметры по умолчанию.
Зарегестрируйтесь как Admin и введите пароль zabbix, которые используются для входа в административную панель.

Скриншот 3. Окно загрузки Zabbix.