Сперва обкатываю установку со всеми возникающими нюансами под тестовым полигоном на базе Debian 10 + Proxmox 6, как происходит установка Zabbix 5.0 LTS (долговременный релиз на 5 лет) применительно к Ubuntu 18.04 Server чтобы после взять эти шаги и перенести на боевое использование. Я за LTS релизы и свои наработки.

  • Версия: 5.0 LTS
  • Дистрибутив: Ubuntu
  • Версия ОС: 18.04
  • База данных: MySQL
  • Веб-сервер: Apache2

Шаг №1: Разворачиваю VM с осью Ubuntu 18.04 Server посредством сервиса FOG Project который работает в моей офисной и домашней сети. Свой скрипт (dproject) подготовки системы на последующую работу более не использую, т.к. я его включил в файл ответов server.seed. Кому интересно как это делается, то вот вам пошаговая заметка "Сетевая установка Lubuntu 18.04 Desktop через FOG Project". У меня все заметки связаны и рабочие.

Шаг №2: Изменяю имя системы на привычный мне формат именование систем:

ekzorchik@srv-bionic:~$ sudo nano /etc/hosts

172.33.33.23 srv-zabbix.polygon.com srv-zabbix

ekzorchik@srv-bionic:~$ sudo nano /etc/hostname

srv-zabbix

ekzorchik@srv-bionic:~$ sudo reboot

Шаг №3: Опираясь на ранее рассмотренную заметку по разворачиванию Zabbix 4.4 на Ubuntu 18.04 Server я беру ее за основу и дополняю набором шагов по разворачиванию Zabbix 5.0 LTS

ekzorchik@srv-zabbix:~$ sudo apt-get -y install tasksel
ekzorchik@srv-zabbix:~$ sudo tasksel install lamp-server
ekzorchik@srv-zabbix:~$ sudo nano /etc/php/7.2/apache2/php.ini
date.timezone = Europe/Moscow
ekzorchik@srv-zabbix:~$ php --version
PHP 7.2.24-0ubuntu0.18.04.4 (cli) (built: Apr 8 2020 15:45:57) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.24-0ubuntu0.18.04.4, Copyright (c) 1999-2018, by Zend Technologies
ekzorchik@srv-zabbix:~$
ekzorchik@srv-zabbix:~$ echo "ServerName localhost" | sudo tee -a /etc/apache2/apache2.conf
ServerName localhost
ekzorchik@srv-zabbix:~$ sudo unlink /etc/apache2/sites-available/000-default.conf
ekzorchik@srv-zabbix:~$ sudo unlink /etc/apache2/sites-available/default-ssl.conf
ekzorchik@srv-zabbix:~$ sudo unlink /etc/apache2/sites-enabled/000-default.conf
ekzorchik@srv-zabbix:~$ sudo rm /var/www/html/index.html
ekzorchik@srv-zabbix:~$ sudo mysqladmin -u root password 712mbddr@

Шаг №4: Теперь нужно прописать репозитарий Zabbix для установки последнего релиза на момент написания данной заметки (18.05.2020):

ekzorchik@srv-zabbix:~$ wget https://repo.zabbix.com/zabbix/5.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.0-1+bionic_all.deb
ekzorchik@srv-zabbix:~$ sudo dpkg -i zabbix-release_5.0-1+bionic_all.deb
ekzorchik@srv-zabbix:~$ cat /etc/apt//sources.list.d/zabbix.list
deb http://repo.zabbix.com/zabbix/5.0/ubuntu bionic main
deb-src http://repo.zabbix.com/zabbix/5.0/ubuntu bionic main
ekzorchik@srv-zabbix:~$
ekzorchik@srv-zabbix:~$ sudo apt-get update

Шаг №5: Создаю базу, пользователя и пароль для сервиса Zabbix(а):

ekzorchik@srv-zabbix:~$ sudo apt-get install -y zabbix-server-mysql
ekzorchik@srv-zabbix:~$
sudo mysql -u root -p712mbddr@ -e "create database db_zabbix
character set utf8 collate utf8_bin"
ekzorchik@srv-zabbix:~$ sudo mysql -u root -p712mbddr@ -e "create user 'us_zabbix'@'localhost' identified by '612mbddr@'"
ekzorchik@srv-zabbix:~$ sudo mysql -u root -p712mbddr@ -e "grant all on db_zabbix.* to 'us_zabbix'@'localhost';"
ekzorchik@srv-zabbix:~$

Шаг №6: В комплекте установленного пакета связки mysql + Zabbix: zabbix-server-mysql присутствует структура формирующая базу данных, ее следует импортировать в созданную "Шаг №5" базу указав созданного пользователя и пароль от него:

ekzorchik@srv-zabbix:~$ sudo zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -u us_zabbix -p612mbddr@ db_zabbix

На заметку: Если устанавливается только Zabbix-proxy то у него своя собственная структура под свою базу данных:

ekzorchik@srv-zabbix:~$ sudo apt-get install -y zabbix-proxy-mysql

# zcat /usr/share/doc/zabbix-proxy-mysql/schema.sql.gz (но лучше будет сделать на этот счет практическую заметку)

Шаг №7: Теперь настраиваю серверную часть Zabbix на взаимодействие с базой данных:

ekzorchik@srv-zabbix:~$ sudo cp /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.backup
ekzorchik@srv-zabbix:~$ sudo rm /etc/zabbix/zabbix_server.conf
ekzorchik@srv-zabbix:~$ sudo nano /etc/zabbix/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
DBHost=localhost
DBName=db_zabbix
DBUser=us_zabbix
DBPassword=612mbddr@
DBPort=3306
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
FpingLocation=/usr/bin/fping
Fping6Location=/usr/bin/fping6
LogSlowQueries=3000
StatsAllowedIP=127.0.0.1

После не забываем сохранить внесенные изменения.

Шаг №8: Устанавливаю Zabbix Frontend

ekzorchik@srv-zabbix:~$ apt-cache search zabbix-frontend
zabbix-frontend-php - Zabbix network monitoring solution - PHP front-end
ekzorchik@srv-zabbix:~$ apt-cache search zabbix-apache-conf
zabbix-apache-conf - Zabbix network monitoring solution - PHP front-end
ekzorchik@srv-zabbix:~$ sudo apt-cache search zabbix-get
zabbix-get - Zabbix network monitoring solution - get
ekzorchik@srv-zabbix:~$ sudo apt-get install -y zabbix-frontend-php zabbix-apache-conf zabbix-get

Шаг №9: Устанавливаю Zabbixагент на систему где у меня Zabbixсервер, на эту же:

ekzorchik@srv-zabbix:~$ sudo apt-get install -y zabbix-agent
ekzorchik@srv-zabbix:~$ sudo cp /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf.backup
ekzorchik@srv-zabbix:~$ sudo rm /etc/zabbix/zabbix_agentd.conf
ekzorchik@srv-zabbix:~$ sudo nano /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
EnableRemoteCommands=1
LogRemoteCommands=1
Server=127.0.0.1, 172.33.33.23
ServerActive=127.0.0.1,172.33.33.23
Hostname=Zabbix server
Include=/etc/zabbix/zabbix_agentd.d/*.conf
UnsafeUserParameters=1

Шаг №10: Инициализирую запуска процесса сервиса Apache2, Zabbixсервера и агента Zabbix:

ekzorchik@srv-zabbix:~$ sudo systemctl restart apache2
ekzorchik@srv-zabbix:~$ sudo systemctl enable zabbix-server
ekzorchik@srv-zabbix:~$ sudo systemctl restart zabbix-server && sudo systemctl status zabbix-server | head -n5
● zabbix-server.service - Zabbix Server
Loaded: loaded (/lib/systemd/system/zabbix-server.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2020-05-18 23:59:47 MSK; 18ms ago
Process: 12579 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=0/SUCCESS)
Process: 12580 ExecStart=/usr/sbin/zabbix_server -c $CONFFILE (code=exited, status=0/SUCCESS)
ekzorchik@srv-zabbix:~$ sudo systemctl enable zabbix-agent
ekzorchik@srv-zabbix:~$ sudo systemctl restart zabbix-agent && sudo systemctl status zabbix-agent | head -n5
● zabbix-agent.service - Zabbix Agent
Loaded: loaded (/lib/systemd/system/zabbix-agent.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2020-05-19 00:04:24 MSK; 16ms ago
Process: 12898 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=0/SUCCESS)
Process: 12899 ExecStart=/usr/sbin/zabbix_agentd -c $CONFFILE (code=exited, status=0/SUCCESS)
ekzorchik@srv-zabbix:~$

Шаг №11: Все можно приступать к настройке фронтенда (Web-интерфейс использования). Для это запускаем браузер, т. к. я работая за Ubuntu 18.04 Desktop amd64 ноутбука Lenovo E555, то запускаю Google Chrome, открываю новую вкладку и обращаюсь по http://IP&DNS/zabbix к системе на которой под гипервизором Debian 10 + Proxmox 6 я поднимаю сервис мониторинга Zabbix 5.0 LTS. После нажатия клавиши <ENTER> в строке адреса адресная строка меняется на http://172.33.33.23/zabbix/setup.php

этап Welcome — нажимаю Next step

этап Check of pre-requisites (все результирующие должны иметь статус OK и только тогда двигаемся дальше) — нажимаю Next step

этап Configure DB connection — заполняю и только после нажимаю Next step

  • Database type: MySQL
  • Database host: localhost
  • Database port: 3306
  • Database name: db_zabbix
  • User: uz_zabbix
  • Password: 612mbddr@
  • TLS encryption: галочкой не отмечаю

При установке Zabbix 5.0 LTS указываю параметры подключения к базе

этап Zabbix server details — заполняю и только после нажимаю Next step

  • Host: localhost
  • Port: 10051
  • Name: 172.33.33.23

этап Pre-installation summary — результирующая предопределенных настроек, если все верно то нажимаем Next step

этап Install — если Вы видите надпись "Congratulations! You have successfully installed Zabbix frontend.

Configuration file "/usr/share/zabbix/conf/zabbix.conf.php" created.", то значит настройка Frontend для сервиса Zabbix успешно завершена. Нажимаем Finish

Шаг №12: Авторизуемся, для справки URL выглядит так: http://172.33.33.23/zabbix/index.php

  • Username: Admin
  • Password: zabbix
  • Remember me for 30 days: отмечаю галочкой

и нажимаю Sign in. Вот и сам Web-интерфейс

Вот и сам обновленный Web-интерфейс Zabbix 5.0 LTS

Шаг №13: Делаем все по аналогии с заметкой: Отключить листинг каталогов корня Zabbix Server 4.4

Ну а все дальнейшее использование строится уже на приобретённом опыте с предыдущими версиям Zabbix. Как использовать данную систему мониторинга вы можете найти у меня на основном блоге https://www.ekzorchik.ru и его расширенной версии https://lin.ekzorchik.ru. На этом я пока прощаюсь, с уважением автор блога Олло Александр aka ekzorchik.