Найти в Дзене

Установка Zabbix 5.0 из репозитория

Оглавление

Время никогда не стоит на месте. И вот, относительно недавно вышла в свет новая версия прекраснейшей системы мониторинга, Zabbix 5.0. Установка Zabbix 5.0 LTS из репозитория и будет являться основной темой сегодняшней статьи. Дело как обычно не хитрое, главное знать что делаешь.

Установка Zabbix 5.0 LTS из репозитория

1. Установка Ubuntu Server 20.04 – 18.04

Классическое начало для любой статьи подразумевающей установку с нуля 😉

2. Ubuntu Server 20.04 – 18.04 – Изменение имени сервера

Про имя сервера – всё понятно. У каждого своя система. Мой сервер будет называться ag-zabbix-server-1

3. Ubuntu Server 20.04 и 18.04 – Установка статического IP

Возможны оговорки. Прям ваще без статического IP не обойтись разве что в сетях без DHCP сервера совсем. Ну или если вам очень важно на 1000% быть уверенными что сервер не потеряет свой IP адрес  процессе работы, при этом вы не уверены за свой DHCP сервер. В моём случае у меня в сети поднят DHCP сервер проинтегрированный с локальной DNS зоной местного контроллера домена на samba4 и я буду обращаться к своему Zabbix Server 5.0 по имени ag-zabbix-server-1.adminguide.lan. Потому мне просто хватит зафиксировать арендованный заббиксом адрес на DHCP сервере :). Вот кстати упомянутая инструкция: Контроллер домена Ubuntu 20.04 – Ubuntu 20.04 AD-DC

4. Устанавливаем репозиторий Zabbix

Дабы не оставалось ненужных хвостов и всё само потом удалилось, перейдем в temp:

cd /tmp

Скачиваем пакет который добавит репозиторий Zabbix

wget https://repo.zabbix.com/zabbix/5.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.0-1+focal_all.deb

Устанавливаем пакет

sudo dpkg -i zabbix-release_5.0-1+focal_all.deb

Обновляем данные APT

sudo apt update

5. Установка Zabbix 5.0 LTS Server

5.1 Установка пакетов

Эта команда установит вам в систему сам Zabbix 5.0 LTS Server конфигурированный на работу с PostgreSQL, фронтэнд, apache и Zabbix Agent

sudo apt install zabbix-server-pgsql zabbix-frontend-php php7.4-pgsql zabbix-apache-conf zabbix-agent

В процессе установки, будет так же установлен сервер PostgreSQL. Посмотреть его версию можно с помощью команды psql -V

Результат psql -v
Результат psql -v

5.2 Создание пользователя zabbix через psql

Теперь нам необходимо создать пользователя и базу данных для Zabbix 5.0 LTS

sudo -u postgres createuser --pwprompt zabbix

Эта команда создаст пользователя с именем zabbix
Флаг
–pwprompt означает что команда createuser попросит вас указать пароль для учётной записи в процессе создания

5.3 Создание БД для Zabbix Server 5.0

sudo -u postgres createdb -O zabbix zabbix

Параметр -O zabbix задаёт имя владельца создаваемой базы. Следующий параметр zabbix определяет имя самой базы данных. То есть мы создаём базу данных под названием zabbix и её владельцем будет пользователь с именем zabbix
Теперь в свежесозданную БД, нам необхоимо импортировать исходную схему и данные с помощью команды:

zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u zabbix psql zabbix

5.4 Настройка пароля от БД

Указываем в настройках Zabbix Server пароль для доступа к БД. Открываем на редактирование с правами администратора файл zabbix_server.conf

sudo nano /etc/zabbix/zabbix_server.conf

Далее в открытом редакторе, с помощью комбинации Ctrl+W открываем поиск, туда вбиваем DPB (или полностью “DBPassword=”) и нажимаем Enter. Поисковик подсветит нам область с настройкай пароля базы данных. Там указываем пароль который мы задали при создании пользователя zabbix для PostgreSQL 12. Область настройки пароля БД должна принять следующий вид:

# # # Option: DBPassword
# Database password.
# Comment this line if no password is used.
#
# Mandatory: no
# Default:
DBPassword=AdminGuide.Ru # пароль от пользователя zabbix в PostgreSQL 12

Помолимся кому-нибудь за то, чтобы яндекс наконец-то ввёл тег <code>

Задаём пароль доступа к БД
Задаём пароль доступа к БД

Незабудьте раскоментировать строку с паролем убрав знак # в начале статьи! Да, в данном варианте инсталяции, пароль от БД лежит в открытом виде в файле конфигурации, и любой пользователь обладающий админскими правами сможет этот пароль подсмотреть в текстовичке. Насколько это страшно конкретно для вас, вы должны решить для себя самостоятельно.
Настройте вашу таймзону
В файле /etc/zabbix/apache.conf раскомментируйте пункт
php_value date.timezone и укажите ту таймзону которая вам необходима. От этого будет зависеть то каким временем будет оперировать заббикс сервер. Ссылку на список всех поддерживаемых таймзон можно найти в конце статьи.

sudo nano /etc/zabbix/apache.conf

5.5 Запуск Zabbix Server и Zabbix Agent

sudo systemctl restart zabbix-server zabbix-agent apache2sudo systemctl enable zabbix-server zabbix-agent apache2

Теперь к нашему серверу можно подключиться по адресу http://ip_сервера/zabbix Если вдруг вы забыли IP, узнать его можно командой ip addr show . У меня в сети настроен контроллер домена с DHCP сервером проинтегрированным с DNS зоной. Потому я буду подключаться на сервер по его имени: ag-zabbix-server-1.adminguide.lan

6. Настройка фронтэнда Zabbix 5.0 LTS

6.1 Заходим на наш сервер через http

Сразу попадаем на окно приветствия

Welcome Screen
Welcome Screen

Всё что нам тут нужно сделать – это просто нажать Next Step

6.2 Проверка соответствия

Попадаем в окно проверки соответствия. Вам нужно чтобы напротив каждого пункта у вас было написано OK

Проверка соответствия требованиям
Проверка соответствия требованиям

Если всё везде OK – переходим к следующему пункту нажав Next Step. В противном случае задавайте вопросы в комментариях, будем разбираться 🙂

6.3 Настройка подключения к СУБД

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

Настройка подключения к СУБД
Настройка подключения к СУБД

Заполняем параметры подключения в соответствии с достигнутыми на данный момент результатами. Типа базы данных PostgreSQL, имя базы данных zabbix, пользователь zabbix, пароль, тот что указали про создании пользователя postgresql zabbix

6.4 Указываем параметры подключения фронтэнда к Zabbix серверу

Подключение к серверу Zabbix 5.0
Подключение к серверу Zabbix 5.0

Это больше на тот случай, когда высоконагруженная инсталяция и фронтэнд располагается на отдельном сервере. В нашем случае можно просто нажать на Next Step. Я так же рекомендую заполнить поле Name.

6.5 Проверяем все заданные параметры

Подтверждение настроек
Подтверждение настроек

Если нас всё устраивает – нажимаем Next Step, иначе возвращаемся и приводим настройки в соответствие с желаемыми

6.6 Завершаем установку

Завершение установки
Завершение установки

Так же стоит обратить внимание, что пользователь под которым работает apache имеет доступ на запись в папку /usr/share/zabbix/conf/ потому файл zabbix.conf.php был создан автоматически. Если вдруг, по какому-то странному стечению обстоятельств, у вас у пользователя этих прав не будет, Zabbix попросит вас скачать файл конфигурации и укажет куда его нужно положить. Если бы в моём случае этих прав не было, вместо собщения об успешной установке, я бы получил ссылку на скачивание конфига и просьбу разместить его по адресу обведённому красным.

6.7 Заходим в админку Zabbix 5.0 Server

Таки нажав на Finish, мы попадаем на логинскрин в админ панель нашего новоиспечённого сервера

Логинскрин
Логинскрин

Стандартный логин и пароль от фронтэнда Zabbix Server, при описанном в статье методе установки, будет:
Zabbix Server 5.0 Default Login and Password
Username: Admin
Password: zabbix
Admin – с большой буквы.
Жмём на
Sign in и резво набигаем всё конфигурировать.
P.S. После успешной авторизации мы увидим следующее:

Главный экран  Zabbix Server 5.0 - Dashboard
Главный экран Zabbix Server 5.0 - Dashboard

В качестве заключения, хотелось бы сказать что рабочий мониторинг позволяет избежать многих бед. Да, ваше начальство даже не узнает о том что вы избежали того или иного косяка и будет считать что вы дармоед и получаете свои деньги за то что ничего не делаете. Тупых людей в мире много и с этим нам приходится жить. Потому необходимость наличия в собственном парке серверов телеметрии и диагностики – каждый должен обосновать для себя самостоятельно.

Полезные ссылки: