# Система мониторинга Zabbix. Часть 1. Установка и запуск сервера
Zabbix — система для мониторинга различных сервисов и приложений. Это удобный инструмент, позволяющий собрать в одном месте всю необходимую информацию. Zabbix работает с очень широким спектром задач и может отслеживать практически всё — от температуры ядер центральных процессоров до количества подписчиков в Telegram-канале.
В этой инструкции мы установим Zabbix на наш сервер, настроим и запустим виртуальную машину Zabbix и установим веб-интерфейс.
Zabbix работает на большинстве современных операционных систем, с самыми распространёнными СУБД (MySQL и PostgreSQL) и веб-серверами (Nginx и Apache).
Мы будем устанавливать Zabbix на подготовленный к работе сервер на Ubuntu с предустановленным программным стеком LEMP (здесь в качестве веб-сервера используется Nginx).
# Установка Zabbix
Начнём установку с добавления официального репозитория Zabbix в список apt. Скачаем его из официального источника, распакуем и сразу же обновим список репозиториев:
wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-1+ubuntu20.04_all.deb
sudo dpkg -i zabbix-release_6.0-1+ubuntu20.04_all.deb
sudo apt update
Теперь всё готово к установке.
Установим не только сам Zabbix, но и несколько приложений, которые нужны ему для полноценной работы:
sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts zabbix-agent
Здесь мы установили:
агента Zabbix
zabbix-agent
;дополнительные модули для работы с MySQL
zabbix-server-mysql
;пакет для поддержки работы с PHP
zabbix-frontend-php
(нужен для работы веб-интерфейса Zabbix);пакет для поддержки работы Nginx
zabbix-nginx-conf
;поддержку sql-скриптов для создания и управления базами данных
zabbix-sql-scripts
.
После завершения установки всех необходимых приложений перейдём к настройке работы бэкэнд-части Zabbix-сервера.
# Настройка бэкэнда
Сначала создадим базу данных и пользователя для Zabbix.
Заходим в установленную MySQL:
sudo mysql
В запустившемся интерфейсе работы с MySQL создаём новую базу данных «zabbix» и указываем тип её кодировки:
create database zabbix character set utf8mb4 collate utf8mb4_bin;
После этого создаём нового пользователя и передаём ему все права на управление только что созданной базой:
create user zabbix@localhost identified by 'password';
grant all privileges on zabbix.* to zabbix@localhost;
Вместо password
необходимо ввести новый пароль для пользователя базы. Будьте внимательны: если в процессе установки MySQL вы запускали скрипт, отвечающий за первичную настройку базы, то пароль нового пользователя должен соответствовать требованиям безопасности, заданным при первичной настройке.
Теперь осталось только обновить права всех пользователей, и можно выходить из MySQL:
flush privileges;
quit
После создания новой базы импортируем в неё начальную схему и основные данные:
zcat /usr/share/doc/zabbix-sql-scripts/mysql/server.sql.gz | mysql -uzabbix -p zabbix
Программа предложит ввести пароль — укажите пароль для только что созданного пользователя базы данных.
Когда импорт схем завершится, можно переходить к настройке серверной конфигурации. Для этого откроем конфигурационный файл в любом текстовом редакторе:
sudo vim /etc/zabbix/zabbix_server.conf
Здесь в строке Password=
нужно указать пароль для доступа к базе данных.
Это единственное изменение, которое нужно сделать в конфигурационном файле.
После этого переходим к настройке работы Nginx:
sudo vim /etc/zabbix/nginx.conf
Раскомментируем строки # listen 80;
и # server_name example.com;
и укажем нужные нам параметры: номер порта, на котором будет работать наш Zabbix-сервер, и доменное имя.
Если для размещения Zabbix вы используете поддомен своего основного домена (zabbix.example.com), то номер порта можно оставить 80
.
Сохраняем изменения и закрываем файл.
Готово! Бэкэнд готов к старту Zabbix-сервера. Осталось только перезапустить службы, чтобы изменения вступили в силу. Одновременно с этим добавим их в автозагрузку:
systemctl restart zabbix-server zabbix-agent nginx php7.4-fpm
systemctl enable zabbix-server zabbix-agent nginx php7.4-fpm
Теперь можно переходить к настройке основного рабочего инструмента Zabbix — веб-интерфейса.
# Настройка веб-интерфейса
Для начала работы с веб-интерфейсом Zabbix в адресной строке браузера введите имя сервера, которое указывали в конфигурационном файле Nginx zabbix.example.com
.
Если настройка бэкэнда была верной, и все сервисы работают правильно, то вы увидите стартовое окно работы с Zabbix — окно установки веб-интерфейса:
Выполните установку согласно указаниям мастера установки. На этапе проверки соединения с базой данных также проверьте, что все данные указаны верно, и введите пароль пользователя:
После завершения установки можно заходить в Zabbix:
Для первого входа используйте параметры стандартного администратора Zabbix:
- Имя: Admin
- Пароль: zabbix
Далее можно переходить к первичной настройке Zabbix и началу работы с ним.