К нам обратился клиент из ритейл-сегмента. Более 300 пользователей ежедневно работали в тяжелой нетиповой конфигурации 1С:ERP. База данных весила около 500 ГБ, и система начала критически тормозить: блокировки при проведении документов достигали 2-3 минут.
Проблема
Клиент был уверен, что проблема в нехватке ресурсов, и уже планировал закупку новых серверов на несколько миллионов рублей.
Аудит и выявление узких мест
Мы установили систему мониторинга (Zabbix + скрипты технологического журнала 1С) и сняли метрики. Выяснилось:
Когда бизнес работает 24/7, простой базы данных недопустим. В этом гайде мы покажем архитектуру отказоустойчивого (High Availability) кластера PostgreSQL 16, которую мы используем в production для наших Enterprise-клиентов.
Архитектура
Наш стек:
PostgreSQL 16: Сама СУБД.
Patroni: Шаблонный инструмент для управления HA PostgreSQL, разработанный Zalando.
etcd: Распределенное хранилище ключ-значение для хранения состояния кластера (DCS).
HAProxy: Балансировщик нагрузки для перенаправления трафика на мастер-узел.
Keepalived (Опционально): Для обеспечения отказоустойчивости самого HAProxy через VIP (Virtual IP).
Пошаговая настройка
(В этой статье должен быть подробный технический текст с конфигами patroni.yml, командами установки etcd и настройками haproxy.cfg. Это демонстрирует вашу глубокую экспертизу.)