23.06.2025

Установка Zabbix на Ubuntu

Zabbix – свободная система для мониторинга различных IT инфраструктур, например облачных сервисов, обычной сети, а так же VPS. Она умеет отслеживать самые разные параметры, например, загрузку ЦПУ, место на жестком диске, пинг, доступность узлов, загрузку сети, а так же строить графики и рассылать оповещения.

Мониторинг Zabbix может быть развернут как с помощью программы агента, так и с помощью существующих ресурсов системы или устройства (например с помощью ICMP пинга, или SNMP, в том числе подключаясь через SSH или Telnet, выполняя любую команду и использовать вывод как возвращаемое значение)
Сегодня мы используя Mysql в качестве БД и Nginx в качестве web сервера запустим Zabbix на Ubuntu версии 20.04.

Подготовка:

Нам понадобится сервер с ubuntu 20.04 и root доступ
Большинство команд в этой инструкции потребуют root доступ, зайдите под суперпользователем или используйте sudo.
Zabbix присутствует в стандартных репозиториях, но не в последней версии, к счастью у Zabbix есть свой репозиторий, его и подключим командой:

wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-4+ubuntu20.04_all.deb
dpkg -i zabbix-release_6.0-4+ubuntu20.04_all.deb

Нам понадобится целый набор приложений, давайте установим его.

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

База данных

Скачаем Mysql.

apt install mysql-server

Не забудем его запустить.

systemctl start mysql.service


Зайдем в Mysql под суперпользователем

mysql -uroot -p

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

create database zabbix character set utf8mb4 collate utf8mb4_bin;

Серверу понадобится аккаунт для работы с БД, создадим его следующей командой. Можно подставить свой пароль(оставляем кавычки).

create user zabbix@localhost identified by 'password';

Дадим ему права, для работы с бд.

grant all privileges on zabbix.* to zabbix@localhost;

Разрешим бинарное логирование (позволит подставить шаблонную базу данных).

set global log_bin_trust_function_creators = 1;
quit;


Скачаем шаблонную конфигурацию, введём пароль, добавленный выше.

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

Выключаем логирование,

mysql -uroot -p
set global log_bin_trust_function_creators = 0;
quit;

Поправим содержимое

nano /etc/zabbix/zabbix_server.conf

Уберем комментарий (нужно стереть символ “#”) с “DBPassword=” и впишем свой пароль.
Для быстрого поиска можно воспользоваться Ctrl+W
Закрываем Nano. Ctrl+X, соглашаемся с изменениями.

Настройка web-сервера

Изменим файл /etc/zabbix/nginx.conf. Снимаем комментарии с опций ‘listen’ и ‘server_name’.
listen 8080 – это порт на котором будет открываться интерфейс Zabbix, менять его не нужно, а в строке server_name понадобиться вписать IP адрес cервера вместо “example.com”.

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

locale -a


Для добавления нужной нам, откроем /etc/locale.gen и снимем комментарий с ru_RU.UTF8

sudo nano */etc/locale.gen*

Выходим из файла, сохраняем изменения, обновляем подключенные локали.

sudo locale-gen

Перезагрузим Zabbix, чтобы подгрузились новые локализации.

systemctl restart zabbix-server zabbix-agent nginx php7.4-fpm

И конечно добавим автоматическую загрузку на старте системы

systemctl enable zabbix-server zabbix-agent nginx php7.4-fpm

Проверяем – всё ок.

Двигаемся дальше, проверяем что всё работает.

Тип БД – Mysql, БД, как и пользователь – zabbix, пароль от пользователя такой же как в базе данных.

Время и имя выбираем любое удобное.

Ещё раз проверяем что всё в порядке.

Сервер готов, осталось зайти и начать пользоваться, жмем ‘Finish’ и вводим учётные данные.
Username: Admin
Password: zabbix

Заключение

Сегодня мы сделали первый шаг в настройке системы мониторинга, установив сервер Zabbix на Ubuntu 20.04