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

Обзор развертывания Zabbix на сервере

Предварительные требования

Для успешного развертывания системы должны быть соблюдены следующие условия:

  • Операционная система: Ubuntu 22.04 (или совместимая версия).

  • Права доступа: Права суперпользователя (root) для установки системных пакетов и управления сервисами.

  • Порты:

  • 80 — используется Apache для внутреннего взаимодействия.

  • 443 — внешний доступ через HTTPS.

  • 8080 — внутренний порт веб-сервера.

FDQN итоговой панели на домене hostkey.in

Для доступа к интерфейсу управления используется следующий шаблон домена:

Параметр Значение
Префикс {Server_ID}
Домен hostkey.in
Полный шаблон {Server_ID}.hostkey.in/zabbix

Процесс установки приложения

Развертывание Zabbix выполняется в несколько этапов и включает установку системных компонентов, настройку базы данных и конфигурацию веб-сервера:

  1. Подготовка системы:

  2. Установка репозитория Zabbix (версия 7.0).

  3. Обновление кэша пакетов apt.

  4. Настройка локалей (установка en_US.UTF-8).

  5. Установка компонентов:

  6. Установка основного программного обеспечения: zabbix-server-mysql, zabbix-frontend-php, zabbix-apache-conf, zabbix-sql-scripts, zabbix-agent и python3-mysqldb.

  7. Установка серверной части базы данных mariadb-server.

  8. Настройка базы данных:

  9. Создание базы данных zabbix с кодировкой utf8mb4.

  10. Создание пользователя zabbix с полными правами на базу данных.

  11. Импорт начальной схемы данных из файла /usr/share/zabbix-sql-scripts/mysql/server.sql.gz.

  12. Настройка глобального параметра log_bin_trust_function_creators = 1 на время импорта данных.

  13. Конфигурация веб-сервера:

  14. Редактирование /etc/zabbix/zabbix_server.conf для установки пароля к базе данных.

  15. Настройка Apache (/etc/apache2/ports.conf) на прослушивание порта 8080.

Базы данных

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

  • Имя базы данных: zabbix

  • Кодировка: utf8mb4 (collation: utf8mb4_bin)

  • Пользователь: zabbix@localhost

  • Хранение: Данные хранятся локально на сервере.

Контейнеры Docker и их запуск

Для обеспечения работы защищенного соединения через SSL используется контейнер:

Параметр Значение
Имя образа jonasal/nginx-certbot:latest
Режим сети host
Политика перезапуска unless-stopped
Тома (volumes) nginx_secrets:/etc/letsencrypt
/data/nginx/user_conf.d:/etc/nginx/user_conf.d
Переменные окружения CERTBOT_EMAIL=hkadm@hostkey.com

Контейнер используется для управления SSL-сертификатами через Certbot и проксирования трафика. Конфигурация контейнера загружается из файла /data/nginx/nginx-certbot.env.

Инструкция по обновлению приложения

Для обновления основного программного обеспечения Zabbix необходимо выполнить обновление системных пакетов:

apt update && apt upgrade zabbix-server-mysql zabbix-agent apache2

Если используется Docker для проксирования, обновите контейнер Nginx:

docker compose pull && docker compose up -d

Расположение конфигурационных файлов и данных

Тип данных Путь
Конфигурация Zabbix Server /etc/zabbix/zabbix_server.conf
Конфигурация Apache /etc/apache2/ports.conf
Файлы конфигурации Nginx (пользовательские) /data/nginx/user_conf.d
Секреты и сертификаты SSL nginx_secrets (внутри контейнера /etc/letsencrypt)
Конфигурация Docker Compose /root/nginx/compose.yml

Доступные порты для подключения

  • 443 (HTTPS): Внешний доступ к веб-интерфейсу Zabbix.

  • 8080: Внутренний порт Apache.

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×