Zabbix в 2026: пошаговое руководство по установке, настройке мониторинга серверов и оповещений | AdminWiki

Zabbix в 2026: пошаговое руководство по установке, настройке мониторинга серверов и оповещений

30 июля 2026 12 мин. чтения
Содержание статьи

Zabbix 7.0 LTS - это проверенная временем система мониторинга с открытым исходным кодом, которая в 2026 году продолжает активно развиваться. Вы получаете централизованный сбор метрик, гибкую систему оповещений и автоматическое обнаружение устройств без лицензионных отчислений. Это руководство проведёт вас через полный цикл развертывания: от установки сервера до настройки эскалации алертов в Telegram.

В отличие от связки Prometheus + Grafana, Zabbix предлагает всё в одном пакете - хранение данных, визуализацию и алертинг. Для классической инфраструктуры из физических серверов, виртуальных машин и сетевого оборудования это означает более низкий порог входа и меньше движущихся частей. Если вы выбираете между решениями, сравнение Zabbix и Prometheus + Grafana поможет принять взвешенное решение.

Почему Zabbix в 2026 году - всё ещё правильный выбор для мониторинга

Zabbix 7.0 LTS, выпущенный в 2024 году, получил расширенную поддержку до 2029 года. Ключевые улучшения коснулись производительности ядра: асинхронный сбор данных через прокси, переработанный движок хранения истории и нативная интеграция с Kubernetes. В 2026 году это зрелая платформа, способная обрабатывать миллионы метрик в секунду на одном сервере.

Сравним с альтернативами. Prometheus требует отдельной установки Grafana для дашбордов и Alertmanager для оповещений - три компонента, которые нужно настраивать и поддерживать. Datadog и другие SaaS-решения привязывают вас к ежемесячным платежам, которые растут с каждым новым хостом. Zabbix даёт полный контроль над данными и нулевую стоимость лицензий. Для команды из трёх администраторов, обслуживающей 500 хостов, экономия составляет от $15 000 в год по сравнению с коммерческими облачными сервисами.

Сообщество Zabbix насчитывает более 100 000 активных пользователей. Готовые шаблоны для MySQL, Nginx, PostgreSQL, Cisco, Juniper и сотен других систем доступны сразу после установки. Вам не нужно писать экспортеры с нуля - достаточно импортировать шаблон и привязать к хосту.

План развертывания: что мы будем настраивать и в какой последовательности

Логика развертывания идёт от фундамента к верхнему уровню. Сначала поднимаем сервер - центральный узел, который принимает и хранит данные. Затем устанавливаем агенты на целевые системы, чтобы начать сбор метрик. Когда базовый мониторинг заработал, настраиваем автоматическое обнаружение - это избавит от ручного добавления каждого нового хоста. После этого переходим к дашбордам для визуального контроля и завершаем настройкой оповещений с эскалацией.

Вот дорожная карта этой статьи:

  1. Установка Zabbix сервера на Linux (Ubuntu 24.04 LTS и Rocky Linux 9)
  2. Установка и настройка Zabbix агента на Linux и Windows
  3. Автоматическое обнаружение устройств через network discovery
  4. Мониторинг критических ресурсов: диски, сеть, службы
  5. Создание эффективных дашбордов
  6. Настройка гибких оповещений с эскалацией

Каждый этап содержит проверенные конфигурации. Если вы уже установили сервер, можете сразу перейти к нужному разделу.

Установка Zabbix сервера: пошаговая инструкция для Linux

Сервер Zabbix состоит из трёх компонентов: основного процесса zabbix_server, веб-интерфейса на PHP и базы данных. В качестве СУБД используем PostgreSQL 16 - она обеспечивает лучшую производительность на больших объёмах данных по сравнению с MySQL. Перед установкой обновите систему и настройте часовой пояс.

Установка на Ubuntu 24.04 LTS

Добавляем официальный репозиторий Zabbix 7.0 LTS и устанавливаем пакеты одной группой команд. Все действия выполняются от root или через sudo.

# Установка репозитория Zabbix
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-1+ubuntu24.04_all.deb
dpkg -i zabbix-release_7.0-1+ubuntu24.04_all.deb
apt update

# Установка сервера, веб-интерфейса и агента
apt install -y zabbix-server-pgsql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent

Теперь настраиваем PostgreSQL. Создаём пользователя и базу данных. Обратите внимание на локаль - Zabbix требует UTF-8.

# Установка PostgreSQL 16
apt install -y postgresql postgresql-contrib

# Создание пользователя и базы
sudo -u postgres createuser --pwprompt zabbix
sudo -u postgres createdb -O zabbix -E UTF8 zabbix

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

# Импорт схемы
zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix

Правим конфигурационный файл /etc/zabbix/zabbix_server.conf - указываем пароль к базе данных:

DBPassword=ваш_пароль_от_пользователя_zabbix

Запускаем службы и добавляем их в автозагрузку:

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

Веб-интерфейс доступен по адресу http://ваш_ip/zabbix. При первом входе мастер установки проверит зависимости PHP и запросит параметры подключения к базе. Логин по умолчанию: Admin, пароль: zabbix. Сразу смените пароль в разделе Administration → Users.

Установка на Rocky Linux 9

Для RHEL-совместимых дистрибутивов последовательность аналогична, но используется dnf и другие пути к конфигам.

# Отключаем SELinux или настраиваем политики (рекомендуется permissive на время установки)
setenforce 0

# Установка репозитория
rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/9/x86_64/zabbix-release-7.0-1.el9.noarch.rpm
dnf clean all

# Установка пакетов
dnf install -y zabbix-server-pgsql zabbix-web-pgsql zabbix-apache-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent

PostgreSQL 16 устанавливается из стандартных репозиториев Rocky Linux 9:

dnf install -y postgresql16 postgresql16-server
postgresql-16-setup initdb
systemctl start postgresql-16
systemctl enable postgresql-16

# Создание пользователя и базы
sudo -u postgres createuser --pwprompt zabbix
sudo -u postgres createdb -O zabbix -E UTF8 zabbix

Импорт схемы и правка конфига:

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

# В файле /etc/zabbix/zabbix_server.conf раскомментируйте и задайте:
DBPassword=ваш_пароль

Запуск служб:

systemctl restart zabbix-server zabbix-agent httpd php-fpm
systemctl enable zabbix-server zabbix-agent httpd php-fpm

Типичная ошибка при установке - проблемы с локалью в PostgreSQL. Если веб-интерфейс показывает ошибку подключения к базе, проверьте, что база создана с кодировкой UTF8: psql -U zabbix -d zabbix -c "SHOW server_encoding;". Вывод должен быть UTF8.

Установка и настройка Zabbix агента на целевых серверах

Агент Zabbix - это лёгкий процесс, который собирает метрики с хоста и передаёт их серверу. Он работает в двух режимах. Пассивный режим: сервер запрашивает данные у агента по расписанию. Активный режим: агент сам отправляет данные на сервер, что снижает нагрузку при большом количестве хостов за NAT. В продакшене часто комбинируют оба режима: пассивный для оперативных проверок, активный для массового сбора метрик.

Установка Zabbix агента на Linux

На Ubuntu 24.04 агент уже установлен вместе с сервером. На других машинах выполните:

# Ubuntu/Debian
apt install -y zabbix-agent

# Rocky Linux / RHEL 9
dnf install -y zabbix-agent

Основной конфигурационный файл - /etc/zabbix/zabbix_agentd.conf. Минимально необходимые параметры:

Server=IP_вашего_zabbix_сервера
ServerActive=IP_вашего_zabbix_сервера
Hostname=уникальное_имя_хоста

Параметр Hostname должен совпадать с именем хоста, которое вы укажете в веб-интерфейсе Zabbix при добавлении устройства. После правки конфига перезапустите агент:

systemctl restart zabbix-agent
systemctl enable zabbix-agent

Проверьте соединение с сервером. На сервере Zabbix выполните:

zabbix_get -s IP_агента -k agent.ping

Ответ должен быть «1». Если соединения нет, проверьте файрвол: агент слушает порт 10050/tcp.

Для массовой установки агентов на десятки серверов используйте Ansible. Пример плейбука:

- hosts: all
  tasks:
    - name: Install Zabbix agent
      apt:
        name: zabbix-agent
        state: present
    - name: Configure agent
      template:
        src: zabbix_agentd.conf.j2
        dest: /etc/zabbix/zabbix_agentd.conf
      notify: restart zabbix-agent
  handlers:
    - name: restart zabbix-agent
      systemd:
        name: zabbix-agent
        state: restarted

Установка Zabbix агента на Windows

Для Windows Server 2025 скачайте MSI-пакет с официального сайта Zabbix. Тихая установка через PowerShell:

Start-Process msiexec.exe -ArgumentList '/i "zabbix_agent-7.0.0-windows-amd64.msi" /qn SERVER=IP_сервера SERVERACTIVE=IP_сервера HOSTNAME=имя_хоста' -Wait

После установки откройте порт 10050 в брандмауэре Windows:

New-NetFirewallRule -DisplayName "Zabbix Agent" -Direction Inbound -Protocol TCP -LocalPort 10050 -Action Allow

Конфигурационный файл агента находится в C:\Program Files\Zabbix Agent\zabbix_agentd.conf. Служба запускается автоматически после установки.

Автоматическое обнаружение устройств: настройка network discovery

Network discovery в Zabbix сканирует заданные диапазоны IP-адресов и автоматически добавляет найденные устройства. Это экономит часы при развертывании мониторинга в сети с сотнями хостов. В отличие от авторегистрации, где агент сам стучится на сервер, обнаружение инициируется сервером и не требует предварительной настройки на целевом устройстве.

Создание правила обнаружения для Linux-серверов

Перейдите в Configuration → Discovery → Create discovery rule. Задайте параметры:

  • Name: Обнаружение Linux-серверов
  • IP range: 192.168.1.1-254 (ваш диапазон)
  • Update interval: 3600 (раз в час)
  • Checks: Zabbix agent - ключ system.uname
  • Device uniqueness criteria: Zabbix agent - system.uname

Проверка system.uname гарантирует, что обнаружен именно Linux-хост с работающим агентом. После создания правила настройте действие (Action) в разделе Configuration → Actions → Discovery actions. Укажите условия: Discovery rule equals Обнаружение Linux-серверов, Discovery status equals Up. В операциях добавьте: Add host, Link to template "Linux by Zabbix agent".

Теперь каждый новый Linux-сервер в сети будет автоматически добавлен в мониторинг с базовым набором метрик: CPU, память, диски, сетевые интерфейсы, запущенные процессы.

Автоматическое добавление хостов с сетевым оборудованием по SNMP

Для коммутаторов, маршрутизаторов и ИБП используйте SNMP-проверки. Создайте отдельное правило обнаружения:

  • Checks: SNMPv2 - community string "public" (замените на вашу)
  • Device uniqueness criteria: SNMPv2 - sysName

В действии привяжите шаблон в зависимости от типа устройства: "SNMP Generic" для базового мониторинга, или специфичные шаблоны вроде "Cisco IOS by SNMP". Стек мониторинга Prometheus + Grafana также поддерживает SNMP, но требует отдельного экспортера snmp_exporter, тогда как Zabbix работает с SNMP из коробки.

Мониторинг критических ресурсов: диски, сеть, службы

Стандартный шаблон "Linux by Zabbix agent" покрывает базовые метрики, но для продакшена нужны уточнённые пороги и дополнительные проверки. Разберём настройку триггеров для трёх критических областей.

Настройка триггеров для дискового пространства

Триггер срабатывает, когда свободное место на разделе падает ниже порога. В стандартном шаблоне порог часто установлен на 20%, что для современных дисков может быть поздно. Создайте новый триггер в Configuration → Hosts → ваш хост → Triggers → Create trigger:

Name: Недостаточно места на разделе {#FSNAME}
Expression: last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pfree]) < 20
Severity: Warning

Добавьте второй триггер с порогом 10% и severity High. Чтобы исключить временные файловые системы, в выражении можно указать конкретные точки монтирования или использовать фильтр по макросу {#FSTYPE}, исключая tmpfs и devtmpfs. Если вам нужен более глубокий мониторинг состояния дисков, включая SMART-атрибуты и температуру, обратитесь к руководству по автоматическому мониторингу дисков.

Мониторинг производительности сетевых интерфейсов

Ключевые метрики сетевого интерфейса: входящий/исходящий трафик в битах в секунду, количество ошибок и отброшенных пакетов. Шаблон "Linux by Zabbix agent" собирает их через ключи net.if.in["{#IFNAME}"] и net.if.out["{#IFNAME}"].

Триггер на падение линка создаётся на основе операционного статуса интерфейса:

Name: Интерфейс {#IFNAME} отключен
Expression: last(/Linux by Zabbix agent/net.if.status[{#IFNAME}]) = 2
Severity: High

Для мониторинга ошибок на интерфейсе используйте ключ net.if.in.errors. Триггер на резкий рост ошибок за последние 5 минут:

Expression: avg(/Linux by Zabbix agent/net.if.in.errors[{#IFNAME}],5m) > 10

Проверка доступности ключевых служб

Простые проверки TCP (simple checks) позволяют мониторить доступность служб без установки агента. В разделе Configuration → Hosts → ваш хост → Items → Create item:

Name: HTTP порт 80 доступен
Type: Simple check
Key: net.tcp.service[http,,80]
Update interval: 60s

Для HTTPS используйте net.tcp.service[https,,443]. Триггер на недоступность:

Name: HTTP сервис недоступен на порту 80
Expression: last(/Simple checks/net.tcp.service[http,,80]) = 0
Severity: Disaster

Для специфичных сервисов, которых нет в стандартных шаблонах, создавайте пользовательские элементы данных. Например, проверка, что процесс nginx запущен: ключ proc.num[nginx] с типом Zabbix agent. Триггер сработает, если значение упадёт до нуля.

Создание эффективных дашбордов для визуализации состояния инфраструктуры

Zabbix 7.0 представил обновлённый модуль дашбордов с виджетами, приближенными по возможностям к Grafana. Вы можете создавать интерактивные панели с графиками, таблицами и картами сети без дополнительных инструментов.

Виджет «Топ-10 CPU» и графики утилизации

Создайте новый дашборд в Monitoring → Dashboards → Create dashboard. Добавьте виджет "Top hosts" с параметрами:

  • Name: Топ-10 по загрузке CPU
  • Columns: Host name, CPU utilization
  • Order: Top, 10 entries
  • Item: CPU utilization (из шаблона Linux by Zabbix agent)

Этот виджет мгновенно показывает самые загруженные хосты. Рядом добавьте виджет "Graph" для визуализации трендов по CPU, памяти и дискам выбранного хоста за последние 24 часа. Группируйте виджеты по смыслу: верхний ряд - общее состояние, нижний - детализация.

Карта сети для визуального мониторинга

Карта сети (Network map) отображает топологию инфраструктуры с цветовой индикацией проблем. В Monitoring → Maps → Create map добавьте хосты и связи между ними. Настройте триггеры для изменения цвета: зелёный - всё в порядке, жёлтый - warning, красный - проблема. Карта особенно полезна для оперативного центра мониторинга (NOC), где нужно видеть общую картину за секунды.

Готовые дашборды можно импортировать из официального репозитория шаблонов Zabbix или создать свои под конкретную инфраструктуру. Для продвинутой визуализации с запросами на языке PromQL рассмотрите связку Prometheus + Grafana, описанную в руководстве по наблюдаемости высоконагруженных систем.

Настройка гибких оповещений и уведомлений

Система оповещений Zabbix строится на трёх сущностях: media types (каналы доставки), actions (действия при срабатывании триггера) и escalation steps (шаги эскалации). Правильно настроенная эскалация гарантирует, что критический инцидент не останется незамеченным. Подробное руководство по настройке оповещений Zabbix раскрывает эту тему глубже.

Подключение Telegram в качестве канала уведомлений

Создайте бота через @BotFather в Telegram и получите токен. В Zabbix перейдите в Administration → Media types → Create media type. Выберите тип Webhook и задайте параметры:

Name: Telegram
Type: Webhook
Parameters:
  Token: ваш_токен_бота
  Chat ID: ID_чата_или_пользователя
Message template: Проблема: {TRIGGER.NAME}
Хост: {HOST.NAME}
Статус: {TRIGGER.STATUS}
Время: {EVENT.TIME}

Привяжите этот media type к пользователю в Administration → Users → ваш пользователь → Media → Add. Укажите, для каких severity отправлять уведомления (рекомендуется High и Disaster).

Создание действия с эскалацией

Действие определяет, что происходит при срабатывании триггера. В Configuration → Actions → Create action задайте условия: Trigger severity >= High. В операциях настройте шаги:

  1. Шаг 1 (немедленно): Send message to user "Дежурный администратор" через Telegram
  2. Шаг 2 (через 10 минут, если не подтверждено): Send message to user "Дежурный администратор" через Telegram + Send message to user "Руководитель отдела" через Telegram
  3. Шаг 3 (через 30 минут): Send message to user group "Все администраторы" через Telegram

Длительность шага задаётся в секундах. Условие эскалации - статус события "Problem" и статус подтверждения "Not Ack". Как только дежурный подтверждает проблему в интерфейсе Zabbix, эскалация останавливается.

Для резервирования каналов настройте параллельную отправку через email. SMTP-сервер задаётся в Administration → Media types → Email. Укажите адрес сервера, порт, логин и пароль. Теперь при падении Telegram-бота уведомления дойдут по почте.

Заключение: ваш Zabbix готов к работе - что делать дальше

Вы развернули сервер Zabbix, подключили агенты на Linux и Windows, настроили автоматическое обнаружение устройств, создали дашборды и систему оповещений с эскалацией. Это базовая конфигурация, которая закрывает потребности большинства инфраструктур из 50-500 хостов.

Следующие шаги для развития мониторинга:

  • Настройте Zabbix прокси для удалённых площадок - он буферизует данные при обрыве связи с центральным сервером.
  • Импортируйте шаблоны для специфичных сервисов: MySQL, Nginx, PostgreSQL, Docker. Они содержат преднастроенные метрики и триггеры.
  • Интегрируйте Zabbix с Grafana через плагин zabbix-data-source, если вам нужны более гибкие дашборды.
  • Настройте резервное копирование базы данных PostgreSQL - pg_dump раз в сутки с хранением копий вне сервера мониторинга.

Для развертывания инфраструктуры мониторинга требуются серверные мощности. Timeweb Cloud предоставляет облачные VDS/VPS с посекундной тарификацией, что удобно для тестирования конфигураций перед запуском в продакшен. Если вы создаёте документацию по мониторингу для своей команды, сервис автоматической генерации SEO-сайтов поможет структурировать базу знаний. Для автоматизации рутинных задач по обработке алертов можно подключить нейросети через AiTunnel - агрегатор API с поддержкой GPT и Claude без VPN.

Поделиться:
Сохранить гайд? В закладки браузера