Из этой статьи вы узнаете о сервере Zabbix, я продемонстрирую его установку в систему Debian 12 и покажу web-интерфейс данного решения.

О приложении

Сервер Zabbix — это сервер мониторинга. Он умеет:

  • собирать метрики с различных устройств (роутеры, телефоны, принтеры, компьютеры, сервера и подобное);
  • обнаруживать проблемы, проблемой считается превышение метрики каких-то порогов;
  • высылать уведомления если появляются проблемы на наблюдаемом устройстве;
  • визуализировать данные, то есть рисовать графики, составлять комплексные экраны.

Zabbix — это веб приложение, оно написано на PHP и ему нужен web-сервер и база данных. В качестве web-сервера вы можете использовать Apache или Nginx. А в качестве СУБД — MySQL или PostgreSQL. В этой статье я буду использовать Nginx и MySQL.

Мониторинг устройств осуществляется в основном с помощью агентов, но не только. То есть на наблюдаемый сервер или пользовательский компьютер вы устанавливаете агент и тот собирает метрики и отправляет их на сервер мониторинга Zabbix. Все соединения между агентами и сервером поддерживают шифрование.

Для ускорения работы вы можете использовать готовые шаблоны или создавать свои. Второй функцией, которая призвана ускорить работу — это сетевое обнаружение.

Официальные источники информации по Zabbix:

Установка

Установим репозиторий:

$ wget https://repo.zabbix.com/zabbix/6.0/debian/pool/main/z/zabbix-release/zabbix-release_6.0-5+debian12_all.deb
$ sudo dpkg -i zabbix-release_6.0-5+debian12_all.deb
$ sudo apt update

После проделанного у вас в системе появится новый репозиторий. Посмотрим на него с помощью grep -v '^$|^#' (это уберёт все закомментированные строки):

$ grep -v '^$\|^#' /etc/apt/sources.list.d/zabbix.list
deb https://repo.zabbix.com/zabbix/6.0/debian bookworm main
deb-src https://repo.zabbix.com/zabbix/6.0/debian bookworm main

Установим Zabbix сервер, web-интерфейс и агент:

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

Установим и настроим СУБД:

$ sudo apt -y install mariadb-server
$ sudo mariadb-secure-installation
Enter current password for root (enter for none): <PRESS ENTER>
Switch to unix_socket authentication [Y/n] y
Change the root password? [Y/n] y
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y

После проделанного root пользователь сможет подключаться к СУБД без пароля, другим пользователям нужно будет вводить пароль.

Создадим базу данных:

$ sudo mysql -u root
mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
mysql> create user zabbix@localhost identified by '321';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> set global log_bin_trust_function_creators = 1;
mysql> \q

Обратите внимание, выше мы сделали пользователя базы данных zabbix с паролем 321.

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

$ zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix

Выключим опцию log_bin_trust_function_creators после импорта схемы базы данных:

$ sudo mysql -u root
mysql> set global log_bin_trust_function_creators = 0;
mysql> \q

Настроим базу данных для Zabbix сервера:

$ sudo nano /etc/zabbix/zabbix_server.conf
DBPassword=321

Настроим PHP для web-интерфейса:

$ sudo nano /etc/zabbix/nginx.conf
listen 8080;
server_name 192.168.0.25;

В конфиге выше я вместо имени хоста указал ip-адрес хоста. И буду открывать сайт по его ip-адресу (http://192.168.0.25:8080).

Запустим необходимые службы и настроим им автозапуск:

$ sudo systemctl enable --now zabbix-server zabbix-agent nginx php8.2-fpm

До-установка из web-интерфейса

Дальше откроем с помощью браузера наш Zabbix сервер — http://<ip-address>:8080/. И продолжаем установку из web-интерфейса.

Выберем язык по умолчанию:

Установка Zabbix 6.0

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

Установка Zabbix 6.0

Дальше укажем пароль подключения к базе данные:

Установка Zabbix 6.0

Придумаем имя сервера Zabbix и укажем часовой пояс:

Проверим настройки:

И нажмём кнопку «Финиш»:

После чего вы перейдёте на страницу входа, здесь нужно будет ввести логин и пароль, по умолчанию это: Admin и zabbix.

Zabbix 6.0 Страница входа

Обзор web-интерфейса

После логина нас встречает такой web-интерфейс:

Zabbix 6.0 Web-интерфейс

Слева вы видите меню:

Zabbix 6.0 Меню

Правее видим информацию о системе. Здесь видно что наш сервер запущен, мониторит 1 узел (самого себя) и другую информацию.

Zabbix 6.0 Информация о системе

Ещё правее видим информацию по узлам. В нашем случае видно что мониторится 1 узел и у него пока нет никаких проблем.

Ниже расположен блок с последними проблемами, но в нашем случае их нет.

Наш сервер мониторит сам себя, и мы можем посмотреть на последние данные (собранные метрики). Для этого нужно перейти по меню «Мониторинг / Последние данные». По умолчанию Zabbix использовал 2 шаблона чтобы собирать 121 метрику с самого себя. Это очень много и нужно настраивать всё это под ваши нужды.

Изменение пароля

И последнее что желательно сделать сразу, это сменить пароль администратора. Для этого перейдём в меню «Настройки пользователя / Профиль».

Zabbix 6.0 Настройки пользователя

Затем, в открывшемся интерфейсе нажмём кнопку «Изменить пароль»:

И введём новый пароль.


Это первая статья по Zabbix. Но я планирую написать несколько:)

Если понравилась статья, подпишись на наше сообщество VK.

Сводка
Zabbix - описание и установка
Имя статьи
Zabbix - описание и установка

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *