Установка Zabbix 5.4 на Debian 10

Буквально неделю назад вышел Zabbix 5.4 с огромным количеством нововведений.

Почитать об основных новшествах можно на официальном сайте или на opennet.ru

В данной статье я опишу установку Zabbix 5.4 на Debian 10, в качестве базы данных будет использоваться MariaDB 10.5, в качестве web-сервера будем использовать Nginx + PHP-FPM 7.4
Итак, поехали…

Исходные данные: ОС Debian 10 (Buster), БД MariaDB 10.5, web-server Nginx + PHP-FPM 7.4;
Задача: Установить Zabbix 5.4;

Предполагается, что у Вас уже установлена MariaDB 10.5 и установлен web-сервер Nginx с PHP-FPM 7.4, а так же произведена базовая их настройка.

Установка Zabbix 5.4 на Debian 10:

1. Установка необходимых доп. пакетов:

apt-get update
apt-get install curl wget -y

2. Установка репозитария Zabbix:

wget https://repo.zabbix.com/zabbix/5.4/debian/pool/main/z/zabbix-release/zabbix-release_5.4-1+debian10_all.deb
dpkg -i zabbix-release_5.4-1+debian10_all.deb

2. Установка компонентов Zabbix (сервер, веб-фронтенд и агент):

Обновление кэша пакетов:

apt-get update

Установка необходимых модулей PHP:

apt-get install -y php7.4 php7.4-cli php7.4-fpm php7.4-opcache php7.4-curl php7.4-mbstring php7.4-zip php7.4-xml php7.4-bcmath php7.4-common php7.4-gd php7.4-ldap php7.4-mysql

Установка Zabbix (сервер, веб-интерфейс, конфигурация для nginx, файлы схем и данные для БД, агент):

apt-get install -y zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts zabbix-agent

3. Создание и инициализация базы данных Zabbix:

# mariadb -uroot -p
password: *******
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
MariaDB [(none)]> create user [email protected] identified by 'myverybigpassword';
MariaDB [(none)]> grant all privileges on zabbix.* to [email protected];
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> quit;

Импортируем схему и данные:

zcat /usr/share/doc/zabbix-sql-scripts/mysql/create.sql.gz | mariadb -uzabbix -pmyverybigpassword zabbix

4. Редактирование конфигурации Zabbix server:

Отредактируем файл /etc/zabbix/zabbix_server.conf (установим пароль пользователя zabbix из предыдущего пункта).

Я воспользуюсь sed чтобы заменить закомментированный параметр DBPassword и вписать пароль myverybigpassword:

sed -i 's/# DBPassword=/DBPassword=myverybigpassword/g' /etc/zabbix/zabbix_server.conf

5. Редактирование конфигурации Zabbix web-frontend для Nginx:

Для этого откройте файл /etc/nginx/conf.d/zabbix.conf и раскомментируйте директивы listen и server_name
В директиву server_name внесите ваш домен для веб-интерфейса Zabbix.

Пример моего файла /etc/nginx/conf.d/zabbix.conf (привожу только первые строки):

server {
        listen          80;
        server_name     zabbix.mydomain.ru;

        root    /usr/share/zabbix;

Далее отредактируем настройки пула php-fpm, для этого откройте файл /etc/zabbix/php-fpm.conf и раскомментируйте параметр php_value[date.timezone] = Europe/Riga
Вы должны указать здесь свой часовой пояс, например Europe/Moscow

Пример моего файла /etc/zabbix/php-fpm.conf (привожу только последние строки):

php_value[max_input_time] = 300
php_value[max_input_vars] = 10000
php_value[date.timezone] = Europe/Moscow

Теперь перезапустим PHP-FPM:

systemctl restart php7.4-fpm

Проверим статус:

# systemctl status php7.4-fpm
● php7.4-fpm.service - The PHP 7.4 FastCGI Process Manager
   Loaded: loaded (/lib/systemd/system/php7.4-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2021-05-27 05:44:29 CEST; 2s ago
     Docs: man:php-fpm7.4(8)
  Process: 11419 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /run/php/php-fpm.sock /etc/php/7.4/fpm/pool.d/www.conf 74 (code=exited, status=0/SUCCESS)
 Main PID: 11411 (php-fpm7.4)
   Status: "Ready to handle connections"
    Tasks: 8 (limit: 2296)
   Memory: 28.2M
   CGroup: /system.slice/php7.4-fpm.service
           ├─11411 php-fpm: master process (/etc/php/7.4/fpm/php-fpm.conf)
           ├─11412 php-fpm: pool www
           ├─11413 php-fpm: pool www
           ├─11414 php-fpm: pool zabbix
           ├─11415 php-fpm: pool zabbix
           ├─11416 php-fpm: pool zabbix
           ├─11417 php-fpm: pool zabbix
           └─11418 php-fpm: pool zabbix

May 26 21:34:48 myserver systemd[1]: Starting The PHP 7.4 FastCGI Process Manager...
May 26 21:34:48 myserver systemd[1]: Started The PHP 7.4 FastCGI Process Manager.

Мы видим, что появился пул zabbix, значит все успешно.

Теперь проверим конфигурацию Nginx и перезагрузим ее:

nginx -t && nginx -s reload

Результат:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

6. Настройка Web-фронтенда:

Если п.5 был выполнен успешно, то мы можем перейти в браузере на наш домен zabbix.mydomain.ru и увидеть приветственный экран инсталлятора Zabbix:

Установка Zabbix 5.4

Установка Zabbix 5.4

Далее все интуитивно понятно, это выберем Русский язык интерфейса и нажмем кнопку Далее

На следующем экране будет проверка требований к установки (все ли компоненты и пакеты у нас установлены и правильно ли настроены)

Установка Zabbix 5.4

Установка Zabbix 5.4

Пролистываем список и видим что везде стоит OK, жмем Далее

Далее перед нами будет шаг настройки соединения с базой данных, нам остается только вбить наш пароль myverybigpassword (у Вас он наверно будет посложнее) и нажать Далее

Установка Zabbix 5.4

Установка Zabbix 5.4

Если пароль для БД был верный, то мы перейдем на следующий шаг — настройка соединения веб-фронтенда с zabbix-server, тут нам нужно лишь ввести имя нашего забикса, например ZBX

Установка Zabbix 5.4

Установка Zabbix 5.4

Следующий шаг — выбор часового пояса по-умолчанию и темы оформления:

Установка Zabbix 5.4

Установка Zabbix 5.4

Далее нам предлагают проверить все параметры и завершить настройку если все верно:

Установка Zabbix 5.4

Установка Zabbix 5.4

Все успешно, жмем Финиш:

Установка Zabbix 5.4 (финал)

Установка Zabbix 5.4 (финал)

Далее перед нами откроется стандартное окно входа в Zabbix, вводим логин Admin и пароль zabbix

Попадаем в уже привычный с 5-й версии интерфейс, видим не очень красивую надпись, что zabbix-сервер не запущен — это так и есть, мы пока его не запустили.

Zabbix 5.4

Zabbix 5.4

7. Запуск сервера и агента:

Теперь можно запустить сервер и агента:

systemctl enable --now zabbix-agent
systemctl enable --now zabbix-server

Проверим факт запуска:

# systemctl status zabbix-server
● zabbix-server.service - Zabbix Server
   Loaded: loaded (/lib/systemd/system/zabbix-server.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2021-05-27 06:44:29 CEST; 6s ago
  Process: 17536 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
 Main PID: 17538 (zabbix_server)
    Tasks: 44 (limit: 2296)
   Memory: 30.4M
   CGroup: /system.slice/zabbix-server.service
           ├─17538 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
           ├─17543 /usr/sbin/zabbix_server: configuration syncer [synced configuration in 0.041061 sec, idle 60 sec]
           ├─17544 /usr/sbin/zabbix_server: housekeeper [startup idle for 30 minutes]
           ├─17545 /usr/sbin/zabbix_server: timer #1 [updated 0 hosts, suppressed 0 events in 0.005674 sec, idle 29 sec]
           ├─17546 /usr/sbin/zabbix_server: http poller #1 [got 0 values in 0.001147 sec, idle 5 sec]
           ├─17547 /usr/sbin/zabbix_server: discoverer #1 [processed 0 rules in 0.000461 sec, idle 60 sec]
           ├─17548 /usr/sbin/zabbix_server: history syncer #1 [processed 0 values, 0 triggers in 0.000035 sec, idle 1 sec]
           ├─17549 /usr/sbin/zabbix_server: history syncer #2 [processed 0 values, 0 triggers in 0.000038 sec, idle 1 sec]
           ├─17550 /usr/sbin/zabbix_server: history syncer #3 [processed 0 values, 0 triggers in 0.000045 sec, idle 1 sec]
           ├─17551 /usr/sbin/zabbix_server: history syncer #4 [processed 1 values, 1 triggers in 0.003222 sec, idle 1 sec]
           ├─17552 /usr/sbin/zabbix_server: escalator #1 [processed 0 escalations in 0.000996 sec, idle 3 sec]
           ├─17553 /usr/sbin/zabbix_server: proxy poller #1 [exchanged data with 0 proxies in 0.000031 sec, idle 5 sec]
           ├─17561 /usr/sbin/zabbix_server: self-monitoring [processed data in 0.000047 sec, idle 1 sec]
           ├─17562 /usr/sbin/zabbix_server: task manager [processed 0 task(s) in 0.002818 sec, idle 5 sec]
           ├─17563 /usr/sbin/zabbix_server: poller #1 [got 1 values in 0.003024 sec, idle 5 sec]
           ├─17564 /usr/sbin/zabbix_server: poller #2 [got 0 values in 0.000016 sec, idle 5 sec]
           ├─17565 /usr/sbin/zabbix_server: poller #3 [got 0 values in 0.000015 sec, idle 5 sec]
           ├─17566 /usr/sbin/zabbix_server: poller #4 [got 0 values in 0.000050 sec, idle 5 sec]
           ├─17567 /usr/sbin/zabbix_server: poller #5 [got 0 values in 0.000012 sec, idle 5 sec]
           ├─17568 /usr/sbin/zabbix_server: unreachable poller #1 [got 0 values in 0.000050 sec, idle 5 sec]
           ├─17569 /usr/sbin/zabbix_server: trapper #1 [processed data in 0.000000 sec, waiting for connection]
           ├─17570 /usr/sbin/zabbix_server: trapper #2 [processed data in 0.000000 sec, waiting for connection]
           ├─17571 /usr/sbin/zabbix_server: trapper #3 [processed data in 0.000000 sec, waiting for connection]
           ├─17572 /usr/sbin/zabbix_server: trapper #4 [processed data in 0.000000 sec, waiting for connection]
           ├─17578 /usr/sbin/zabbix_server: trapper #5 [processed data in 0.000000 sec, waiting for connection]
           ├─17579 /usr/sbin/zabbix_server: icmp pinger #1 [got 0 values in 0.000041 sec, idle 5 sec]
           ├─17580 /usr/sbin/zabbix_server: alert manager #1 [sent 0, failed 0 alerts, idle 5.018083 sec during 5.018380 sec]
           ├─17581 /usr/sbin/zabbix_server: alerter #1 started
           ├─17582 /usr/sbin/zabbix_server: alerter #2 started
           ├─17583 /usr/sbin/zabbix_server: alerter #3 started
           ├─17584 /usr/sbin/zabbix_server: preprocessing manager #1 [queued 0, processed 6 values, idle 5.011966 sec during 5.012
           ├─17585 /usr/sbin/zabbix_server: preprocessing worker #1 started
           ├─17586 /usr/sbin/zabbix_server: preprocessing worker #2 started
           ├─17589 /usr/sbin/zabbix_server: preprocessing worker #3 started
           ├─17590 /usr/sbin/zabbix_server: lld manager #1 [processed 0 LLD rules, idle 5.003231sec during 5.003705 sec]
           ├─17591 /usr/sbin/zabbix_server: lld worker #1 started
           ├─17592 /usr/sbin/zabbix_server: lld worker #2 started
           ├─17593 /usr/sbin/zabbix_server: alert syncer [queued 0 alerts(s), flushed 0 result(s) in 0.001149 sec, idle 1 sec]
           ├─17594 /usr/sbin/zabbix_server: history poller #1 [got 2 values in 0.000374 sec, idle 1 sec]
           ├─17595 /usr/sbin/zabbix_server: history poller #2 [got 0 values in 0.000024 sec, idle 1 sec]
           ├─17596 /usr/sbin/zabbix_server: history poller #3 [got 0 values in 0.000036 sec, idle 1 sec]
           ├─17597 /usr/sbin/zabbix_server: history poller #4 [got 0 values in 0.000033 sec, idle 1 sec]
           ├─17603 /usr/sbin/zabbix_server: history poller #5 [got 0 values in 0.000030 sec, idle 1 sec]
           └─17604 /usr/sbin/zabbix_server: availability manager #1 [queued 1, processed 0 values, idle 5.968632 sec during 5.9689

May 27 06:44:29 myserver systemd[1]: Starting Zabbix Server...
May 27 06:44:29 myserver systemd[1]: zabbix-server.service: Can't open PID file /run/zabbix/zabbix_server.pid (yet?) after start: No
May 27 06:44:29 myserver systemd[1]: Started Zabbix Server.

Посмотрим лог-файл сервера:

# cat /var/log/zabbix/zabbix_server.log
 17538:20210527:064429.923 Starting Zabbix Server. Zabbix 5.4.0 (revision 5059e20a75).
 17538:20210527:064429.923 ****** Enabled features ******
 17538:20210527:064429.923 SNMP monitoring:           YES
 17538:20210527:064429.923 IPMI monitoring:           YES
 17538:20210527:064429.923 Web monitoring:            YES
 17538:20210527:064429.923 VMware monitoring:         YES
 17538:20210527:064429.923 SMTP authentication:       YES
 17538:20210527:064429.923 ODBC:                      YES
 17538:20210527:064429.923 SSH support:               YES
 17538:20210527:064429.923 IPv6 support:              YES
 17538:20210527:064429.923 TLS support:               YES
 17538:20210527:064429.923 ******************************
 17538:20210527:064429.923 using configuration file: /etc/zabbix/zabbix_server.conf
 17538:20210527:064429.927 current database version (mandatory/optional): 05040000/05040000
 17538:20210527:064429.927 required mandatory version: 05040000
 17538:20210527:064429.940 server #0 started [main process]
 17543:20210527:064429.940 server #1 started [configuration syncer #1]
 17547:20210527:064430.049 server #5 started [discoverer #1]
 17546:20210527:064430.053 server #4 started [http poller #1]
 17545:20210527:064430.056 server #3 started [timer #1]
 17548:20210527:064430.056 server #6 started [history syncer #1]
 17544:20210527:064430.057 server #2 started [housekeeper #1]
 17550:20210527:064430.058 server #8 started [history syncer #3]
 17549:20210527:064430.059 server #7 started [history syncer #2]
 17551:20210527:064430.060 server #9 started [history syncer #4]
 17552:20210527:064430.063 server #10 started [escalator #1]
 17553:20210527:064430.066 server #11 started [proxy poller #1]
 17562:20210527:064430.074 server #13 started [task manager #1]
 17564:20210527:064430.074 server #15 started [poller #2]
 17565:20210527:064430.076 server #16 started [poller #3]
 17563:20210527:064430.078 server #14 started [poller #1]
 17566:20210527:064430.079 server #17 started [poller #4]
 17567:20210527:064430.081 server #18 started [poller #5]
 17568:20210527:064430.084 server #19 started [unreachable poller #1]
 17561:20210527:064430.085 server #12 started [self-monitoring #1]
 17569:20210527:064430.085 server #20 started [trapper #1]
 17570:20210527:064430.087 server #21 started [trapper #2]
 17571:20210527:064430.089 server #22 started [trapper #3]
 17572:20210527:064430.092 server #23 started [trapper #4]
 17579:20210527:064430.097 server #25 started [icmp pinger #1]
 17580:20210527:064430.099 server #26 started [alert manager #1]
 17581:20210527:064430.100 server #27 started [alerter #1]
 17582:20210527:064430.100 server #28 started [alerter #2]
 17583:20210527:064430.101 server #29 started [alerter #3]
 17584:20210527:064430.102 server #30 started [preprocessing manager #1]
 17585:20210527:064430.102 server #31 started [preprocessing worker #1]
 17578:20210527:064430.102 server #24 started [trapper #5]
 17586:20210527:064430.104 server #32 started [preprocessing worker #2]
 17593:20210527:064430.109 server #37 started [alert syncer #1]
 17594:20210527:064430.110 server #38 started [history poller #1]
 17592:20210527:064430.111 server #36 started [lld worker #2]
 17591:20210527:064430.111 server #35 started [lld worker #1]
 17590:20210527:064430.111 server #34 started [lld manager #1]
 17595:20210527:064430.111 server #39 started [history poller #2]
 17596:20210527:064430.113 server #40 started [history poller #3]
 17589:20210527:064430.114 server #33 started [preprocessing worker #3]
 17597:20210527:064430.114 server #41 started [history poller #4]
 17604:20210527:064430.117 server #43 started [availability manager #1]
 17603:20210527:064430.119 server #42 started [history poller #5]
 17564:20210527:064432.084 enabling Zabbix agent checks on host "Zabbix server": interface became available
 17548:20210527:064442.077 item "Zabbix server:zabbix[process,ipmi poller,avg,busy]" became not supported: No "ipmi poller" processes started.
 17551:20210527:064443.078 item "Zabbix server:zabbix[process,java poller,avg,busy]" became not supported: No "java poller" processes started.
 17551:20210527:064448.083 item "Zabbix server:zabbix[process,ipmi manager,avg,busy]" became not supported: No "ipmi manager" processes started.
 17551:20210527:064448.083 item "Zabbix server:zabbix[process,snmp trapper,avg,busy]" became not supported: No "snmp trapper" processes started.
 17550:20210527:064449.084 item "Zabbix server:zabbix[process,vmware collector,avg,busy]" became not supported: No "vmware collector" processes started.

Отлично, все запустилось. Идем в Web-интерфейс, смотрим на состояние:

Zabbix 5.4

Zabbix 5.4

Мы видим, что web-фронтенд видит zabbix-сервер и читает с него данные статистики.

Зайдем в Последние данные и проверим, что данные от агента идут:

Zabbix 5.4 (Последние данные)

Zabbix 5.4 (Последние данные)

Данные поступают — это хорошо.

На этом статься завершена.

В следующей статье я расскажу как сделать партиционирование исторических таблиц в Zabbix (БД MariaDB) для того чтобы в дальнейшем при росте размера базы данных Zabbix у нас не возникло проблем с очисткой исторических данных. Гораздо проще сделать партиционирование на начальном этапе, то есть сразу после инсталляции и потом спать спокойно.

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


Оставить комментарий

avatar
1000

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

  Подписаться  
Уведомление о