Настройка кластеризации Битрикс24 On-Premise

Когда одного сервера перестаёт хватать — а это случается при 150–200 одновременных пользователях или при росте БД до 50+ ГБ — встаёт вопрос горизонтального масштабирования? Мы, сертифицированные инженеры Битрикс с 7-летним опытом, реализовавшие более 50 кластеров для Enterprise-сектора — от 3 до
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Настройка кластеризации Битрикс24 On-Premise
Простой
~1 день

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1415
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    995
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    733
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    863
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    772
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1134

Когда одного сервера перестаёт хватать — а это случается при 150–200 одновременных пользователях или при росте БД до 50+ ГБ — встаёт вопрос горизонтального масштабирования?

Мы, сертифицированные инженеры Битрикс с 7-летним опытом, реализовавшие более 50 кластеров для Enterprise-сектора — от 3 до 12 узлов, настраиваем кластеризацию Битрикс24 On-Premise под ключ: от аудита текущей инфраструктуры до развёртывания production-ready кластера с гарантией нулевого downtime. Наша гарантия: кластер выдерживает пиковые нагрузки без потери производительности, а время отклика не превышает 300 мс при 500 конкурентных пользователях. Одномашинная архитектура — это риск. Сбой сервера, перегрев базы данных, потеря сессий — всё это останавливает работу портала. Кластеризация устраняет эти риски: отказ любого компонента не влияет на доступность, а производительность масштабируется линейно. Мы используем только проверенные компоненты — HAProxy, GlusterFS, Redis Sentinel — и настраиваем мониторинг на базе Prometheus и Grafana.

Проблемы, которые решает кластеризация

  • Single point of failure (SPOF) — отказ любого узла не влияет на доступность.
  • Перегрузка БД — разделение на master-slave снижает нагрузку на запись.
  • Разрыв сессий при переключении узлов — sticky sessions и общее Redis-хранилище.

Архитектура кластера

Типовой production-кластер состоит из следующих компонентов:

[Load Balancer: nginx/HAProxy] | ┌────┴────┐ [Web 1] [Web 2] ← Серверы приложений (PHP/nginx) └────┬────┘ | [Shared Storage: NFS/GlusterFS] ← Общий диск для файлов | ┌────┴────┐ [DB Master] ← [DB Replica] ← MySQL/MariaDB репликация | [Redis Sentinel/Cluster] ← Кэш и сессии 

Без общего хранилища файлов кластер не работает: если пользователь загрузил файл на Web 1, а следующий запрос попал на Web 2 — файл «исчез». NFS — простейший вариант, GlusterFS — отказоустойчивый. Мы используем GlusterFS для shared storage, так как он обеспечивает репликацию и высокую доступность. Альтернатива — NFS с резервированием через DRBD.

Как настроить балансировщик для sticky sessions?

Для стабильной работы кластера критична правильная конфигурация балансировщика. nginx с ip_hash подходит для офисных сетей, где IP пользователей стабильны. Для мобильных пользователей лучше HAProxy с cookie persistence — он не теряет сессию при смене IP. nginx_sticky_module — компромисс, но требует сборки nginx с модулем. HAProxy даёт наибольшую надёжность и гибкость взвешивания backend-ов.

Параметр nginx ip_hash nginx sticky module HAProxy cookie
Зависимость от IP высокая низкая низкая
Сложность настройки низкая средняя средняя
Надёжность средняя высокая высокая
Рекомендация для офиса для мобильных универсально
Пример конфигурации HAProxy для sticky sessions
backend bitrix24_backend balance roundrobin cookie SERVERID insert indirect nocache server web1 10.0.1.10:443 check cookie web1 server web2 10.0.1.11:443 check cookie web2 

Настройка репликации MySQL

Master-Slave репликация для читающих запросов. Конфигурация на мастере и реплике:

-- На мастере: создать пользователя репликации CREATE USER 'replicator'@'db-replica' IDENTIFIED BY 'strong_password'; GRANT REPLICATION SLAVE ON *.* TO 'replicator'@'db-replica'; -- В my.cnf мастера [mysqld] server-id = 1 log_bin = /var/log/mysql/mysql-bin.log binlog_do_db = bitrix24 -- В my.cnf реплики [mysqld] server-id = 2 relay_log = /var/log/mysql/mysql-relay-bin.log read_only = 1 

Битрикс24 нужно явно указать, что читающие запросы идут на реплику. Настройка в /bitrix/.settings.php:

'connections' => [ 'value' => [ 'default' => [ 'host' => 'db-master', 'database' => 'bitrix24', ], 'slave' => [ 'host' => 'db-replica', 'database' => 'bitrix24', 'handlersocket' => [...], ], ], ], 

Важно настроить мониторинг лага репликации — критично для корректной работы. Lag более 30 секунд — повод для тревоги.

Почему Redis Cluster необходим для сессий?

Сессии пользователей должны храниться в общем Redis, а не на локальном диске каждого веб-узла:

// /bitrix/.settings.php — настройка Redis 'cache' => [ 'value' => [ 'type' => [ 'class_name' => '\Bitrix\Main\Data\CacheEngineRedis', 'extension' => 'redis', ], 'redis' => [ 'host' => 'redis-sentinel', 'port' => 26379, ], ], ], 'session' => [ 'value' => [ 'mode' => 'redis', 'redis' => [ 'host' => 'redis-sentinel', 'port' => 26379, ], ], ], 

Redis Sentinel вместо одиночного Redis — для автоматического failover при падении мастера. Sentinel обеспечивает отказоустойчивость в 99.9% случаев, что в 10 раз надёжнее одиночного Redis. Официальная документация 1С-Битрикс рекомендует использовать Redis Sentinel для критичных порталов.

Мониторинг кластера

Метрика Инструмент Порог тревоги
Lag репликации MySQL Prometheus + mysqld_exporter > 30 секунд
Использование RAM на веб-узлах node_exporter + Grafana > 85%
Очередь PHP-FPM php-fpm status backlog > 10
Disk lag NFS iostat await > 20ms
Redis hit rate redis-exporter < 80%

Кластер без мониторинга — это кластер, который сломается в пятницу вечером, и вы об этом узнаете от пользователей, а не от системы оповещения. Дополнительно рекомендуем настроить алерты в Telegram/Slack.

Процесс работы

  1. Аудит текущей инфраструктуры и нагрузок (определяем узкие места).
  2. Проектирование архитектуры кластера (балансировщики, БД, кэш).
  3. Развёртывание балансировщиков (nginx/HAProxy) с sticky sessions.
  4. Настройка Master-Slave репликации MySQL с мониторингом лага.
  5. Развёртывание Redis Sentinel или Cluster для сессий и кэша.
  6. Организация shared storage (GlusterFS/NFS).
  7. Настройка мониторинга (Prometheus + Grafana) с порогами и алертами.
  8. Документирование конфигураций и runbook-процедур.
  9. Обучение вашей команды эксплуатации кластера.
  10. Поддержка 24/7 в течение первого месяца после ввода.

Частые ошибки и как их избежать

  • Не настроен sticky session — пользователи теряют корзину и данные входа. Решение: использовать HAProxy с cookie persistence.
  • Lag репликации не контролируется — чтение устаревших данных. Решение: мониторинг лага и автореконнект.
  • Redis без Sentinel — при падении Redis все сессии теряются. Решение: используйте Sentinel или Cluster.
  • Совместное использование кэша между узлами — проблемы с инвалидацией. Решение: тегированный кэш Битрикс24 корректно работает только при общем Redis.

Что входит в работу

  • Комплексный аудит текущей инфраструктуры с определением узких мест.
  • Проектирование архитектуры кластера с учётом ваших нагрузок и бюджета.
  • Развёртывание всех компонентов: балансировщики, БД, кэш, shared storage, мониторинг.
  • Написание документации и runbook для вашей команды.
  • Обучение администраторов: типовые сценарии управления кластером, добавление узлов, обновления без downtime.
  • Поддержка 24/7 в течение первого месяца эксплуатации.

Сроки и стоимость

Сроки настройки кластеризации: от 5 рабочих дней для базовой конфигурации (2 веб-узла, master-slave БД, Redis) до 20 рабочих дней для полноценного кластера с мониторингом и документацией. Стоимость рассчитывается индивидуально после аудита.

Свяжитесь с нами для аудита вашей инфраструктуры — мы оценим текущие узкие места и предложим оптимальную конфигурацию кластера под ваши нагрузки. Получите консультацию по масштабированию Битрикс24 On-Premise.