Zabbix 7 LTS: установка мониторинга для офиса и серверной инфраструктуры
Меня зовут Семёнов Евгений Сергеевич, директор АйТи Фреш. Zabbix в наших руках живёт с версии 1.8 — это был 2011 год. За эти 15 лет я прошёл все релизы, от ужасных миграций 3.0→4.0 до плавных апгрейдов на новые LTS. В 2024 году вышел Zabbix 7.0 LTS, который стал по-настоящему взрослым продуктом: встроенная поддержка Kubernetes, новый Browser-check, причинно-следственный анализ и наконец-то нормальная производительность на больших базах. В этой статье покажу, как развернуть Zabbix 7 для типичной корпоративной инфраструктуры — офис 50–200 ПК, 10–30 серверов, несколько свитчей и принтеров.
Что мониторит Zabbix в корпоративной сети
У нас на практике Zabbix закрывает 95% задач мониторинга офиса:
- Серверы Linux и Windows — CPU, RAM, диски, сервисы, логи, процессы.
- Виртуализация — VMware vCenter, Hyper-V, Proxmox.
- Базы данных — PostgreSQL, MySQL, MS SQL Server, MongoDB.
- Сетевое оборудование — Cisco, Mikrotik, HP, D-Link по SNMP.
- ИБП — APC, Eaton, CyberPower по SNMP или apcupsd.
- Принтеры — счётчики печати, статус картриджей, ошибки.
- Веб-сервисы — HTTP/HTTPS-чеки, JSON-API, SSL-сертификаты.
- Контейнеры — Docker, Kubernetes через встроенные плагины.
- Резервное копирование — статус Veeam, дата последнего бэкапа.
Планирование сервера
| Размер | Хостов | Метрик/сек | CPU | RAM | Диск |
|---|---|---|---|---|---|
| Малый | до 100 | 100–500 | 4 vCPU | 8 ГБ | 200 ГБ SSD |
| Средний | 100–500 | 500–2000 | 8 vCPU | 16 ГБ | 500 ГБ SSD |
| Большой | 500–2000 | 2000–10000 | 16 vCPU | 32 ГБ | 1 ТБ NVMe + TimescaleDB |
| Корпоративный | 2000+ | 10000+ | 32 vCPU | 64 ГБ | 2+ ТБ NVMe + Proxy-ноды |
Наш внутренний мониторинг в дата-центре МТС — Dell Xeon Platinum 8280, 64 ГБ RAM, NVMe-массив, 40G Mellanox-свитч. Держим 140 хостов и 2300 метрик в секунду, нагрузка на CPU 12–15%.
Установка Zabbix 7 на Ubuntu 22.04
# Подключаем репозиторий
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-2+ubuntu22.04_all.deb
dpkg -i zabbix-release_7.0-2+ubuntu22.04_all.deb
apt update
# Сервер, веб-фронт, агент
apt install -y zabbix-server-pgsql zabbix-frontend-php \
zabbix-nginx-conf zabbix-sql-scripts zabbix-agent2 \
zabbix-agent2-plugin-postgresql
PostgreSQL + TimescaleDB
# Установка PostgreSQL 16
apt install -y postgresql-16 postgresql-server-dev-16
# TimescaleDB
echo "deb https://packagecloud.io/timescale/timescaledb/ubuntu/ $(lsb_release -c -s) main" > /etc/apt/sources.list.d/timescaledb.list
wget -O- https://packagecloud.io/timescale/timescaledb/gpgkey | gpg --dearmor > /etc/apt/trusted.gpg.d/timescaledb.gpg
apt update
apt install -y timescaledb-2-postgresql-16
# Тюнинг
timescaledb-tune --quiet --yes
systemctl restart postgresql
Создаём базу Zabbix и импортируем схему:
sudo -u postgres createuser --pwprompt zabbix
sudo -u postgres createdb -O zabbix zabbix
sudo -u postgres psql zabbix -c "CREATE EXTENSION IF NOT EXISTS timescaledb"
zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix
sudo -u zabbix psql zabbix -f /usr/share/zabbix-sql-scripts/postgresql/timescaledb/schema.sql
Конфиг Zabbix-сервера
В /etc/zabbix/zabbix_server.conf:
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=ВашСтойкийПароль
# Кэши - для среднего инсталла
CacheSize=512M
HistoryCacheSize=128M
HistoryIndexCacheSize=64M
TrendCacheSize=64M
ValueCacheSize=256M
# Процессы
StartPollers=10
StartPollersUnreachable=5
StartTrappers=5
StartDiscoverers=3
StartHTTPPollers=3
# Таймеры
Timeout=10
LogFile=/var/log/zabbix/zabbix_server.log
LogSlowQueries=3000
Запускаем и включаем автозапуск:
systemctl enable --now zabbix-server zabbix-agent2 nginx php8.1-fpm
Первичная настройка через веб-интерфейс
Открываем http://ip-сервера/, проходим мастер: параметры PostgreSQL, тайм-зона, имя инстанса. Логинимся Admin / zabbix и сразу меняем пароль — это обязательный первый шаг, я видел слишком много установок с дефолтным паролем в интернете.
Агенты на хостах
На Linux — Zabbix Agent 2 из того же репозитория:
apt install -y zabbix-agent2
# /etc/zabbix/zabbix_agent2.conf
Server=10.0.0.100 # IP Zabbix-сервера
ServerActive=10.0.0.100
Hostname=db-01.corp.example.ru
TLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=db-01
TLSPSKFile=/etc/zabbix/psk.key
systemctl enable --now zabbix-agent2
На Windows Server — MSI-инсталлер с сайта Zabbix. При установке указываем Server IP, имя хоста, включаем PSK-шифрование. Добавляем firewall-правило на порт 10050/TCP входящий.
Шаблоны и автообнаружение
Zabbix 7 поставляется с 450+ встроенными шаблонами. Я всегда начинаю с этих:
- Linux by Zabbix agent active — базовые метрики системы.
- Windows by Zabbix agent active — для Windows Server.
- PostgreSQL by Zabbix agent 2 — встроенный плагин.
- Docker by Zabbix agent 2 — контейнеры и их метрики.
- HTTP Service — проверка доступности веб-сервисов.
- ICMP Ping — простейшая проверка пинга.
- Cisco IOS SNMP — для свитчей и роутеров.
- APC Smart-UPS SNMP — для ИБП.
Автообнаружение сети: Configuration → Discovery → создаём правило «Office network», указываем диапазон 10.0.0.1–10.0.0.254, способ проверки ICMP ping + SNMP v2. Zabbix находит новые устройства и автоматически создаёт хосты с правильным шаблоном.
Алерты в Telegram
Zabbix умеет отправлять уведомления кучей способов: email, Slack, Discord, SMS. Для админов я ставлю Telegram — всегда в кармане, работает в метро, не падает как почта.
# Создаём бота через @BotFather, получаем TOKEN
# Создаём группу админов, добавляем бота, получаем CHAT_ID
# В Zabbix: Alerts → Media types → Telegram (встроенный)
# Параметры:
# Token: 1234567890:AAHnZabbixBotTokenHere
# Chat ID: -1001234567890 (для группы с минусом)
# Parse mode: HTML
# Proxy: (если нужен - http://proxy:3128)
Для каждого админа в user profile → Media добавляем Telegram с его user ID. Actions → Trigger actions → настраиваем уведомления: высокий уровень сразу всем, средний — только дежурному.
Реальный кейс: мониторинг производства
В декабре 2025 к нам обратился клиент — завод пластиковых изделий на 180 рабочих мест, 14 серверов Windows и Linux, 22 управляемых свитча Cisco, 8 ИБП APC, 9 принтеров MFP Kyocera. Стояла задача: единая точка контроля, уведомления в Telegram для 3 админов, история на 2 года для аналитики. За 5 дней развернули Zabbix 7 на виртуалке в их Hyper-V кластере, подключили все 53 хоста, настроили 140+ триггеров. Автообнаружение нашло ещё 6 незадокументированных устройств — два свитча и четыре IP-камеры. Первую неделю правили false positive — после адаптации триггеров количество алертов в Telegram стабилизировалось на 15–25 в сутки, все по делу. Экономический эффект: дважды поймали предвестники отказа RAID по метрикам SMART до того, как диски встали окончательно. Стоимость проекта — 95 000 руб.
Обслуживание и бэкап
- Раз в неделю — проверка размера БД:
SELECT pg_size_pretty(pg_database_size('zabbix')). - Раз в месяц — аудит триггеров на false positive, тюнинг порогов.
- Раз в квартал — обновление минорных версий Zabbix (7.0.x).
- Раз в год — апгрейд PostgreSQL minor-версии.
- Бэкап: pg_dump всей базы раз в сутки + конфиги /etc/zabbix в Git.
# Бэкап
pg_dump -U zabbix zabbix | gzip > /backup/zabbix-$(date +%F).sql.gz
# Крон
0 3 * * * pg_dump -U zabbix zabbix | gzip > /backup/zabbix-$(date +\%F).sql.gz
find /backup -name "zabbix-*.sql.gz" -mtime +30 -delete
Типичные ошибки настройки
- Маленький HistoryCacheSize. При 1000+ хостов дефолтные 16 МБ заполняются — сервер начинает терять данные. Поднимаем до 256–512 МБ.
- Не включён TimescaleDB на существующей базе. Создавать hypertables надо до импорта данных, иначе требуется миграция.
- Одинаковые Hostname у агентов. Zabbix путается, данные идут на один хост. У каждого агента уникальный Hostname.
- Триггеры без гистерезиса. Алерт пришёл, значение колеблется вокруг порога — получаем 200 уведомлений в минуту. Используем recovery expression с более мягким порогом.
- Хранение 365 дней для всех метрик. Раздувает базу до ТБ. History — 14–30 дней, Trends — 365. Для специфичных — индивидуальные настройки.
- Нет PSK/TLS у агентов. По умолчанию трафик в открытом виде — в корпоративной сети это риск.
Развернём Zabbix 7 под ключ за 3–5 рабочих дней
Я лично проектирую и внедряю Zabbix для офисов и дата-центров от 30 хостов. PostgreSQL + TimescaleDB на Dell Xeon в дата-центре МТС (или на вашем железе), шаблоны под реальную инфраструктуру, алерты в Telegram и почту, обучение админов. Бесплатный аудит текущего мониторинга и план внедрения — за 2 часа.
Телефон: +7 903 729-62-41
Telegram: @ITfresh_Boss
Семёнов Евгений Сергеевич, директор АйТи Фреш
FAQ — частые вопросы по Zabbix 7
- Что нового в Zabbix 7 LTS по сравнению с 6.0?
- Zabbix 7 принёс причинно-следственный анализ (root cause analysis), улучшенный Browser checks через Selenium WebDriver, встроенный мониторинг Kubernetes, новый виджет Honeycomb, оптимизированный history cache и поддержку PostgreSQL 16 + TimescaleDB 2.13.
- Нужен ли TimescaleDB для Zabbix?
- Для маленьких инсталляций (до 500 хостов) — нет, PostgreSQL справляется. Для крупных — TimescaleDB обязателен: автопартиционирование по времени, сжатие старых данных (30-80% экономия), быстрые выборки за большие периоды.
- Zabbix агент 1 или 2?
- Zabbix Agent 2 — современный Go-агент с плагинами (Docker, Redis, PostgreSQL, MySQL встроены). Активно разрабатывается с 2019 года. Agent 1 — legacy, остался для старых ОС без поддержки Go. Для новых проектов всегда Agent 2.
- Когда нужен Zabbix Proxy?
- Для удалённых филиалов — проксирование сбора данных через один хост. Для больших сетей — разгрузка основного сервера. Для DMZ-зон — мониторинг без прямого доступа сервера к хостам. Один прокси уверенно тянет 500–1000 хостов.
- Сколько стоит Zabbix?
- Сам продукт бесплатный и open source под AGPL. Платите только за инфраструктуру (сервер, БД) и поддержку — у Zabbix SIA есть коммерческая техподдержка с SLA. Для большинства офисов достаточно community-версии и собственного админа.