Владельцы проектов на 1С-Битрикс часто сталкиваются с тем, что сайт “тормозит” или падает без видимых причин. Часто виноваты тяжелые агенты, разросшийся кэш, атаки ботов или просто нехватка ресурсов.
В этой статье я расскажу, как мы настроили полноценный мониторинг серверов с Bitrix, используя Zabbix 6.x/7.x. Мы не просто будем смотреть “жив ли сервер”, а настроим слежение за безопасностью (Fail2Ban, антивирусы), сроками SSL-сертификатов и “пожирателями” процессора.
1. Архитектура
У нас есть:
-
Zabbix Server (центр сбора данных).
-
Клиентские сервера (CentOS 7/9, где крутится Битрикс).
Наша задача — установить агенты, пробросить данные и вывести их на красивый дашборд.
2. Установка Zabbix Agent 2 на сервер Битрикс
Мы используем zabbix-agent2, так как он написан на Go, поддерживает плагины и работает стабильнее старой версии.
Шаг 1. Подключение репозитория
Для CentOS 7 (частая ОС для VMBitrix):
rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-6.0-4.el7.noarch.rpm
yum clean all
Для CentOS 9 / AlmaLinux 9:
rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/9/x86_64/zabbix-release-7.0-2.el9.noarch.rpm
yum clean all
Шаг 2. Установка
yum install zabbix-agent2
systemctl enable zabbix-agent2
Шаг 3. Настройка конфига
Открываем /etc/zabbix/zabbix_agent2.conf и правим 3 параметра:
-
Server=IP_ВАШЕГО_ZABBIX_СЕРВЕРА(для пассивных проверок). -
ServerActive=IP_ВАШЕГО_ZABBIX_СЕРВЕРА(для активных проверок и авто-регистрации). -
Hostname=имя-вашего-сервера(важно! должно совпадать с именем хоста в админке Zabbix).
Шаг 4. Настройка Firewall
Битрикс (VMBitrix) использует firewalld. Нужно открыть порт 10050:
firewall-cmd --permanent --add-port=10050/tcp
firewall-cmd --reload
Шаг 5. Запуск
systemctl start zabbix-agent2
Лайфхак: Если агент падает со статусом
activatingили ошибкойbind: address already in use(хотя порт свободен), проверьте наличие папки/run/zabbix. На некоторых системах она не создается сама. Лечится так:mkdir -p /run/zabbix && chown zabbix:zabbix /run/zabbix
3. Что мониторить в Битриксе?
Стандартного шаблона Linux by Zabbix agent мало. Вот что мы добавили дополнительно:
А. Мониторинг “Пожирателей CPU”
Битрикс часто вешают “тяжелые” cron-задачи (cron_events.php) или clamscan (антивирус). Чтобы видеть это в Zabbix:
-
Создаем файл
/etc/zabbix/zabbix_agent2.d/procs.conf. -
Добавляем UserParameter:
UserParameter=system.proc.top,ps -eo pcpu,pmem,user,comm,args --sort=-pcpu | head -n 11
- В Zabbix создаем Item типа “Text”, который дергает этот ключ. Теперь мы всегда видим топ процессов прямо на дашборде.
Б. Мониторинг Безопасности (Fail2Ban, ClamAV)
Важно знать, если Fail2Ban “умер” и не банит ботов.
Добавляем в конфиг агента:
# Статус Fail2Ban
UserParameter=security.fail2ban.status,systemctl is-active --quiet fail2ban && echo 1 || echo 0
# Кол-во забаненных IP
UserParameter=security.fail2ban.banned_count,fail2ban-client status sshd 2>/dev/null | grep "Currently banned" | grep -o "[0-9]*" || echo 0
Теперь Zabbix пришлет аллерт, если сервис упал или число банов резко возросло (атака).
В. SSL и Домены
Никаких сторонних сервисов. Агент сам может проверять срок действия сертификата и домена.
Мы используем простой скрипт на Bash + openssl и whois, который отдаёт кол-во дней до просрочки.
Триггер в Zabbix срабатывает, если осталось < 7 дней.
4. Оптимизация (Грабли, на которые мы наступили)
В процессе настройки мы столкнулись с проблемой High Load на одном из серверов.
Симптомы:
-
Load Average улетал к 15.
-
Swap забит.
-
Сайт тормозит.
Причина:
В VMBitrix есть встроенный антивирус (ClamAV), который по крону запускает “быструю проверку”. На серверах с 2-4 ГБ RAM запуск clamscan (который сам ест 1 ГБ под базы) + параллельная работа MySQL и Web-сервера приводила к исчерпанию памяти (OOM Killer) или жесткому свопу.
Решение:
Мы отключили автоматические проверки в /etc/cron.d/bitrix-security, оставив только обновление баз. Сканирование теперь запускаем вручную перед важными релизами, предварительно останавливая “тяжелые” службы, если нужно.
Мораль: Не ставьте “тяжелый” мониторинг на слабые машины.
5. Итоговый Дашборд
В Zabbix мы собрали единый дашборд для всех проектов (Data Overview), который показывает:
-
CPU/RAM usage (светофор: зелёный/желтый/красный).
-
Веб-статус: Дни до истечения SSL и доменов.
-
Безопасность: Статус Fail2Ban и даты баз антивируса.
-
Топ процессов: Отдельный виджет для каждого сервера, чтобы видеть, кто именно грузит процессор прямо сейчас.
Теперь администрирование парка серверов занимает 5 минут в день — просто взглянуть на зеленый экран.