Skip to main content

Установка Zabbix 6 + PostgreSQL + Ubuntu 20.04

Установка

Установка и настройка PostgreSQL на Ubuntu 20.04 описаны в предыдущей статье.

Для запуска web-интерфейса Zabbix на Русском языке необходимо проверить и настроить локали.
Просмотреть весь список установленных локалей.

locale -a



Проверить установлена ли локаль Ru.

locale -a | grep ru

Установка и настройка локали. Для этого вводим в терминале команду dpkg-reconfigure locales и выбираем необходимые локали.

dpkg-reconfigure locales

На экране локалей выбраем ru_RU.UTF-8 UTF-8, либо то что требуется в Вашем случае.

image.png

По умолчанию для системы выбираем ru_RU.UTF-8.

image.png

Теперь если у Вас уже установлен PostgreSQL, можно приступить к установке Zabbix 6. Ссылка на официальный сайт с инструкцией по установке.

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

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

Установка Zabbix сервер, веб-интерфейс и агент

apt -y install zabbix-server-pgsql zabbix-frontend-php php7.4-pgsql zabbix-apache-conf zabbix-sql-scripts zabbix-agent

Создание пользователя и базы данных для Zabbix в PostgreSQL, при выполнении первой команды необходимо будет задать пароль.

sudo -u postgres createuser --pwprompt zabbix
sudo -u postgres createdb -O zabbix zabbix

После выполнения данных команд у Вас будут созданы пользователь и база данных zabbix.

Если Вы захотите изменить пароль для данного пользователя, воспользуйтесь предыдущей статьей по PostgreSQL.

На хосте Zabbix сервера импортируйте начальную схему и данные. Вам будет предложено ввести недавно созданный пароль.

zcat /usr/share/doc/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix

Настройка

Отредактируйте файл /etc/zabbix/zabbix_server.conf.

nano /etc/zabbix/zabbix_server.conf

Обязательные параметры которые необходимо настроить для запуска Zabbix это указать настройки соединения с базой данных.

# ListenPort - Порт который слушает Zabbix, по умолчанию 10051
ListenPort=10051

# DBHost - указать хост на котором размещается база данных Zabbix, по умолчанию localhost
DBHost=localhost

# DBName - указать имя базы данных, по умолчанию zabbix
DBName=zabbix

# DBUser - имя пользователя базы данных, по умолчанию zabbix
DBUser=zabbix

# DBPassword - пароль от пользователя базы данных, обычно задается при создании пользователя
DBPassword=

# Порт подключения к базе данных. Для подключения к PostgreSQL по умолчанию используется DBPort=5432
DBPort=5432

Дополнительно можно отредактировать файл конфигурации Apache2 который находится в каталоге /etc/zabbix/apache.conf.

nano /etc/zabbix/apache.conf

Здесь можно по умолчанию выставить часовой пояс. Для этого необходимо добавить новую строку или раскомментировать и отредактировать существующую # php_value date.timezone Europe/Riga.


Перезапустить Zabbix сервер, агент и apache2.

systemctl restart zabbix-server zabbix-agent apache2

Добавление Zabbix сервер, агента и apache2 в автозагрузку.

systemctl enable zabbix-server zabbix-agent apache2

Открываем необходимые порты для работы web-интерфейса и zabbix.

ufw allow 80
ufw allow 10051

Вход в Zabbix выполняется через web-интерфейс http://server_ip_or_name/zabbix.

Установка Web-интерфейса

При первом входе на web-интерфейс необходимо задать настройки нашей базы данных.
Выбираем необходимый язык.

Проверяем, что выполнены все необходимые требования системы.


Задаем параметры в соответствии с расположением и типом нашей базы данных, а так же логин и пароль для подключения.

Задать имя сервера и часовой пояс.

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

Убеждаемся, что все установилось.

Нажимаем Финиш и попадаем на страницу с Логином и паролем.
По умолчанию логин и пароль: Admin / zabbix

Регистр в логине чувствителен, обязательно Admin с большой буквы.

Решение возможных проблем

Если Ваша база данных была создана в кодиовке отличной от RU_ru UTF.8 и Вы из-за этого не можете установить web-интерфейс.
Останавливаем zabbix-server и подключаемся к PostgreSQL.

systemctl stop zabbix-server
su postgres
psql -Upostgres

Удаляем ранее созданную базу данных zabbix и создаем её заново в нужной кодировке, postgres=#


DROP DATABASE zabbix;
CREATE DATABASE zabbix ENCODING 'UTF-8' LC_COLLATE 'ru_RU.UTF-8' LC_CTYPE 'ru_RU.UTF-8' TEMPLATE template0;

Проверяем вновь созданную базу и выходим из psql

select * from pg_database;
\q

Возвращаемся обратно из postgres в нашего пользователя, заново загружаем шаблоны для базы данных zabbix и запускаем zabbix-server сервер.

exit
zcat /usr/share/doc/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix
systemctl start zabbix-server

Повторно пробуем установить web-интерфейс.