БесплатноБесплатный прототип ключевой страницы и черновик ТЗ при старте проекта
DevOps и BitrixVM

Kubernetes для Битрикс: развёртывание в кластере с автоскейлингом и отказоустойчивостью

Переносим сайт на 1С-Битрикс в Kubernetes: поды, деплойменты и сервисы, ingress, конфиги и секреты, постоянные хранилища для файлов, healthchecks, автоскейлинг под нагрузку и отказоустойчивость. Выкатки в кластер идут через CI/CD без простоя.

10 летна инфраструктуре Битрикс
0простоя при выкатке
HPAавтоскейлинг под нагрузку
24/7мониторинг кластера
Кластер Kubernetes ingress pod pod pod ConfigMap Secret PVC файлы
Что входит

Состав развёртывания Битрикс в Kubernetes

Собираем кластер под вашу нагрузку — от подов и деплойментов до ingress, секретов, постоянных хранилищ для файлов и CI/CD-выкаток без простоя.

Поды, деплойменты и сервисы

Битрикс упаковываем в поды, описываем деплойментами с числом реплик и связываем сервисами для стабильной маршрутизации.

Ingress и маршрутизация

Ingress принимает HTTPS-трафик, терминирует сертификаты и распределяет запросы между подами приложения.

Конфиги и секреты

Настройки выносим в ConfigMap, пароли и ключи — в Secret, поэтому образ остаётся неизменным между окружениями.

Хранилища для файлов

Загрузки, кэш и upload Битрикса держим в постоянных томах PVC, общих для всех реплик, чтобы файлы не терялись.

Healthchecks и автоскейлинг

Liveness и readiness пробы и HPA добавляют реплики под нагрузкой и убирают нездоровые поды из ротации.

CI/CD-выкатки в кластер

Пайплайн собирает образ, прогоняет проверки и катит rolling update в кластер без простоя для посетителей.

Зачем переносить Битрикс в кластер

Где одиночный сервер тормозит и роняет сайт

Пока Битрикс живёт на одной машине, доступность сайта упирается в неё: пики кладут сервер, релизы вызывают простой, а отказ узла останавливает продажи. Kubernetes снимает зависимость от одной машины.

Пик трафика кладёт единственный сервер, и сайт перестаёт открываться.
HPA добавляет реплики под нагрузкой, трафик распределяется по подам, сайт держит пики без падения.
Каждый релиз вызывает простой, пока обновляется код на сервере.
Rolling update обновляет поды по одному, часть реплик всегда в строю — выкатка идёт без простоя.
Отказ одной машины останавливает весь сайт и продажи.
Поды распределены по узлам, кластер пересоздаёт упавшие реплики, отказ узла не роняет сайт целиком.
Настройки и пароли зашиты в сервер, окружения расходятся между собой.
Конфиги в ConfigMap, секреты в Secret, образ один на все окружения — отличия только в значениях.
Зависший процесс держит сервер, а админ узнаёт об этом от клиентов.
Liveness-проба сама перезапускает зависший под, readiness не пускает в него трафик до готовности.
Как это работает

Путь запроса и выкатки в кластере Битрикс

Запрос приходит на ingress, распределяется по подам деплоймента, а новая версия выкатывается rolling update без простоя — старые поды заменяются новыми по одному.

Запроспосетитель ingressHTTPS Сервисбалансировка pod 1 pod 2 CI/CDrolling Поды обновляются по одному, часть реплик всегда обслуживает трафик — простоя нет
Запрос → ingress → сервис → поды деплоймента; выкатка идёт rolling update через CI/CD.
Подробно об услуге

Kubernetes для Битрикс: что это и зачем переносить сайт в кластер

Kubernetes для Битрикс — это перенос сайта на 1С-Битрикс в оркестратор контейнеров, где приложение живёт не на одной машине, а как набор одинаковых подов в кластере. Вместо привычной схемы «один сервер, на котором крутится весь Битрикс», нагрузка распределяется по репликам, а кластер сам следит за их здоровьем: перезапускает упавшие поды, добавляет новые под нагрузкой и убирает их, когда пик спадает. Для бизнеса это означает сайт, который держит трафик в распродажи и не падает целиком из-за отказа одной машины.

В отличие от размещения на единственной BitrixVM, развёртывание Битрикс в Kubernetes отталкивается от декларативного описания инфраструктуры. Вы не настраиваете сервер руками, а описываете желаемое состояние в манифестах: сколько реплик приложения нужно, какой образ запускать, какие конфиги и секреты подмонтировать, какие тома для файлов подключить и как проверять, что под жив. Кластер постоянно приводит фактическое состояние к описанному, поэтому инфраструктура становится воспроизводимой и предсказуемой, а её изменения проходят через тот же процесс ревью, что и код.

Из чего складывается кластер для Битрикс

Под капотом развёртывание объединяет несколько связанных сущностей Kubernetes, каждая из которых закрывает свой кусок инфраструктурной работы. Поды содержат контейнеры с приложением и веб-сервером. Деплойменты управляют числом реплик и порядком их обновления. Сервисы дают стабильный адрес для группы подов, чтобы трафик не зависел от конкретной реплики. Ingress принимает внешние запросы по HTTPS и распределяет их внутрь. ConfigMap и Secret хранят настройки и чувствительные данные отдельно от образа. Постоянные тома PVC держат файлы, которые Битрикс пишет на диск.

Главные узлы развёртывания Битрикс в Kubernetes:

  • поды и деплойменты с приложением, числом реплик и стратегией rolling update;
  • сервисы для стабильной внутренней маршрутизации между компонентами;
  • ingress с терминацией HTTPS, сертификатами и правилами маршрутизации;
  • ConfigMap и Secret для настроек, паролей и ключей отдельно от образа;
  • постоянные тома PVC для загрузок, кэша и upload, общие для всех реплик;
  • liveness и readiness пробы, HPA для автоскейлинга и бюджеты доступности.

Кому нужен Битрикс в Kubernetes

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

Отдельная ценность — для команд с несколькими окружениями. Когда нужны идентичные dev, stage и prod, кластер с конфигами и секретами даёт воспроизводимость: одно и то же описание раскатывается в разных пространствах имён, а отличия сводятся к значениям в ConfigMap и Secret. Это убирает класс ошибок «на тесте работало, на проде упало» и делает выкатки рутинной операцией, а не событием с риском.

Как устроено развёртывание и эксплуатация

Развёртывание Битрикс в Kubernetes мы ведём поэтапно, чтобы действующий сайт не пострадал. Сначала упаковываем приложение в контейнер и описываем базовые манифесты подов, деплойментов и сервисов. Затем подключаем ingress, выносим настройки в ConfigMap и Secret, настраиваем постоянные тома для файлов. После этого добавляем healthchecks, автоскейлинг и стратегию rolling update, проверяем поведение под нагрузкой и только потом переключаем боевой трафик. Такой порядок снижает риск и позволяет откатиться на любом шаге.

Фундамент стабильной работы — здоровье подов и корректные выкатки. Liveness-проба перезапускает зависший контейнер, readiness-проба не пускает трафик в под, пока он не готов, а rolling update обновляет реплики по одной, удерживая часть из них в строю. HPA добавляет поды при росте нагрузки и убирает при спаде. Файлы, которые Битрикс пишет на диск, выносятся в общее постоянное хранилище, поэтому любая реплика видит одни и те же загрузки. Доступ к секретам ограничен, а конфигурация хранится в системе контроля версий.

Результат развёртывания Битрикс в Kubernetes — это инфраструктура, которая держит пики без ручного вмешательства, переживает отказ отдельных узлов и обновляется без простоя. Команда катит релизы через CI/CD, кластер сам следит за здоровьем и масштабом, а бизнес получает сайт, доступность которого не зависит от одной машины и одного дежурного администратора.

Сравнение

Одиночная BitrixVM, ручной кластер или Kubernetes с нами

Сравниваем подходы к размещению Битрикс по тому, что важно для доступности и эксплуатации.

Критерий Одна BitrixVMСвой ручной кластерKubernetes с B2Bsite
Поведение на пике Падает на пикеСкейлинг вручнуюАвтоскейлинг HPA
Выкатка релиза Простой при релизеЗависит от скриптовRolling update без простоя
Отказ узла Останавливает сайтЧастичная защитаСамовосстановление подов
Конфигурация Руками на сервереРазрозненные конфигиConfigMap и Secret
Эксплуатация Дежурный админВысокая нагрузка на DevOpsМониторинг и сопровождение
Этапы работы

Как мы переносим Битрикс в Kubernetes

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

01

Аудит и контейнеризация

Разбираем текущую инфраструктуру Битрикс, упаковываем приложение в контейнер и фиксируем зависимости.

02

Манифесты ядра

Описываем поды, деплойменты и сервисы, выносим настройки в ConfigMap и Secret, подключаем тома для файлов.

03

Ingress и здоровье

Настраиваем ingress с HTTPS, liveness и readiness пробы и стратегию rolling update для выкаток.

04

Автоскейлинг и нагрузка

Подключаем HPA, проверяем поведение под синтетической нагрузкой и подбираем лимиты ресурсов подов.

05

CI/CD и переключение

Собираем пайплайн сборки и выкатки, переводим боевой трафик в кластер и оставляем путь отката.

06

Мониторинг и передача

Настраиваем мониторинг и алерты, передаём манифесты, доступы и инструкции по эксплуатации.

Сроки

Сколько занимает перенос в кластер

Ориентиры по этапам; точный срок зависит от сложности проекта и числа интеграций — фиксируем в смете до старта.

2–4 дня Аудит инфраструктуры и контейнеризация приложения
1
3–5 дней Манифесты подов, деплойментов, сервисов и томов
2
2–4 дня Ingress, healthchecks и стратегия rolling update
3
2–3 дня Автоскейлинг HPA и проверка под нагрузкой
4
2–4 дня CI/CD-пайплайн и переключение боевого трафика
5
постоянно Мониторинг, алерты и сопровождение кластера
6
Тарифы

Сколько стоит развёртывание Битрикс в Kubernetes

Стоимость зависит от нагрузки, числа окружений и интеграций. Ниже — ориентиры; точную смету присылаем после короткого брифа, бесплатно.

Контейнеризация
от 90 000 ₽
Срок: от 1 недели

Упаковка Битрикс в контейнер и базовые манифесты для одного окружения.

  • Образ приложения
  • Поды, деплоймент, сервис
  • ConfigMap и Secret
  • Запуск в тестовом кластере
Популярный выбор
Кластер под нагрузку
от 220 000 ₽
Срок: от 3 недель

Боевой кластер с ingress, хранилищем файлов, healthchecks и автоскейлингом.

  • Ingress с HTTPS
  • Постоянные тома для файлов
  • Liveness и readiness пробы
  • Автоскейлинг HPA
  • Rolling update без простоя
Кластер и CI/CD
от 380 000 ₽
Срок: от 5 недель

Несколько окружений, CI/CD-выкатки в кластер и мониторинг с алертами.

  • Все из тарифа «Кластер под нагрузку»
  • Окружения dev, stage, prod
  • CI/CD-пайплайн выкаток
  • Мониторинг и алерты
  • Сопровождение и развитие
Контейнеризация от 90 000 ₽
Срок: от 1 недели

Упаковка Битрикс в контейнер и базовые манифесты для одного окружения.

  • Образ приложения
  • Поды, деплоймент, сервис
  • ConfigMap и Secret
  • Запуск в тестовом кластере
Популярный Кластер под нагрузку от 220 000 ₽
Срок: от 3 недель

Боевой кластер с ingress, хранилищем файлов, healthchecks и автоскейлингом.

  • Ingress с HTTPS
  • Постоянные тома для файлов
  • Liveness и readiness пробы
  • Автоскейлинг HPA
  • Rolling update без простоя
Кластер и CI/CD от 380 000 ₽
Срок: от 5 недель

Несколько окружений, CI/CD-выкатки в кластер и мониторинг с алертами.

  • Все из тарифа «Кластер под нагрузку»
  • Окружения dev, stage, prod
  • CI/CD-пайплайн выкаток
  • Мониторинг и алерты
  • Сопровождение и развитие

Дополнительные опции

Дополнительное окружение в кластере от 40 000 ₽
Настройка мониторинга и алертов от 50 000 ₽
Нагрузочное тестирование и подбор лимитов от 60 000 ₽
Расчёт выгоды

Сколько стоит простой, который убирает кластер

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

Потери от простоя в месяц 0 ₽

Оценка по формуле: выручка в месяц делится на часы работы, умножается на часы простоя и долю потерянной выручки. Это ориентир потерь, которые снимает отказоустойчивый кластер, а не точная гарантия.

Умный расчёт

Рассчитайте перенос Битрикс в Kubernetes

Ответьте на несколько вопросов о нагрузке, окружениях и текущей инфраструктуре — соберём ориентир по составу кластера и стоимости.

Вопрос 1
Загрузка вопроса…

Примеры работ

Кейсы переноса Битрикс в Kubernetes

Интернет-магазин

Кластер выдержал распродажу без падения

Перенесли нагруженный магазин в Kubernetes, HPA сам добавлял поды на пике, сайт держал трафик распродажи.

0Простой на пике
до 8Реплик на пике
4 неделиСрок
Портал

Выкатки без простоя для частых релизов

Настроили CI/CD и rolling update, релизы стали ежедневными и перестали требовать технического окна.

0Простой при релизе
до 10Релизов в неделю
5 недельСрок
B2B-платформа

Отказоустойчивость и единые окружения

Развели dev, stage и prod через конфиги и секреты, отказ узла перестал останавливать платформу.

3Окружений
без простояОтказ узла
6 недельСрок
Отзывы клиентов

Что говорят клиенты о переносе в кластер

«Раньше распродажа была стрессом: сервер не держал нагрузку и падал. После переноса в Kubernetes сайт просто добавляет поды и работает, мы про падения забыли.»

Дмитрий Технический директор интернет-магазина

«Главное, что получили, — выкатки без простоя. Релизим хоть каждый день, посетители ничего не замечают, технического окна больше нет.»

Анна Руководитель веб-проекта

«Команда аккуратно перенесла портал, ничего не сломав на боевом. Конфиги и секреты развели по окружениям, теперь dev и prod ведут себя одинаково.»

Сергей Ведущий разработчик

«Отказ одного узла перестал нас пугать. Кластер сам пересоздаёт поды, сайт продолжает работать, а мы видим это в мониторинге, а не от клиентов.»

Игорь Системный администратор
Почему мы

На что можно рассчитывать по договору

Опыт именно с Битрикс

Знаем особенности файлов, кэша и upload Битрикса в кластере, поэтому переносим без потери данных и сюрпризов.

Перенос без простоя

Готовим кластер параллельно действующему сайту и переключаем трафик только после проверки под нагрузкой.

Инфраструктура как код

Все манифесты в системе контроля версий, изменения проходят ревью, инфраструктура воспроизводима.

Доступы и манифесты — ваши

Передаём кластер, манифесты и инструкции, без привязки к подрядчику — развивать сможет любая команда.

База знаний

Частые вопросы о Битрикс в Kubernetes — и наш ответ

Это не общие советы из интернета, а закономерности из реальных проектов переноса Битрикс в кластер. Каждый ответ — позиция нашей команды.

Файлы

Куда девать загрузки и upload Битрикса при нескольких репликах

Наш ответ

Файлы, которые Битрикс пишет на диск, выносим в постоянное хранилище PVC, общее для всех подов. Так любая реплика видит одни и те же загрузки, кэш и upload, а файлы не теряются при пересоздании пода.

Сессии

Как не потерять сессии и корзины при балансировке между подами

Наш ответ

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

Выкатки

Как обновлять код без простоя для посетителей

Наш ответ

Используем rolling update: поды заменяются по одному, readiness-проба не пускает трафик в неготовый под, поэтому часть реплик всегда обслуживает запросы. Если что-то пошло не так, откатываемся на предыдущую версию деплоймента.

Секреты

Где хранить пароли и ключи, чтобы не зашивать их в образ

Наш ответ

Пароли, ключи и токены держим в Secret, а не в образе и не в коде. Настройки выносим в ConfigMap. Один и тот же образ катится во все окружения, а отличия сводятся к значениям конфигов и секретов конкретного пространства имён.

Демо-доступ

Покажем кластер и выкатку без простоя на вашем сценарии

Разберём, как Битрикс будет жить в Kubernetes: поды, ingress, конфиги и секреты, хранилище для файлов, автоскейлинг и rolling update. Покажем работающий кластер и выкатку без простоя на близких к вашим задачах.

Экспертный взгляд

Kubernetes для Битрикс или привычная BitrixVM

Соблазн понятен: оставить Битрикс на привычной BitrixVM, докинуть памяти и процессоров и не трогать рабочую схему. На бумаге это выглядит дешевле и проще, чем перенос в Kubernetes. Но вертикальное наращивание одной машины имеет жёсткий потолок: рано или поздно пик трафика всё равно кладёт сервер, релиз вызывает простой, а отказ единственного узла останавливает продажи целиком. Kubernetes решает другую задачу — он убирает зависимость доступности сайта от одной машины и одного дежурного администратора. Ниже разбираем, в чём разница, какие проблемы снимает кластер и как мы переносим Битрикс так, чтобы он работал годами.

Почему одна машина рано или поздно становится узким местом

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

Чем дороже минута простоя и чем заметнее скачки нагрузки, тем дороже обходится эта зависимость. Вы либо держите сервер с запасом «на всякий случай» и переплачиваете за простаивающие ресурсы, либо экономите и рискуете лечь в самый прибыльный момент. Горизонтального запаса при этом нет: добавить вторую машину в работу без оркестрации сложно, а балансировать между ними и синхронизировать файлы приходится вручную.

Что меняет Kubernetes для Битрикс

Kubernetes переводит сайт из модели «одна машина» в модель «набор одинаковых реплик в кластере». Трафик распределяется по подам, а не упирается в один процесс. При росте нагрузки HPA добавляет реплики, при спаде — убирает, поэтому вы платите за ресурсы по факту, а не держите запас постоянно. Выкатка идёт rolling update: поды заменяются по одному, часть реплик всегда обслуживает запросы, и посетитель не видит простоя. Отказ узла перестаёт быть катастрофой — кластер пересоздаёт упавшие поды на здоровых узлах, а сайт продолжает работать.

Не менее важно, что кластер сам следит за здоровьем приложения. Liveness-проба перезапускает зависший контейнер без участия человека, readiness-проба не пускает трафик в под, пока тот не готов отвечать. Администратор перестаёт быть единственной точкой восстановления: рутинное самолечение берёт на себя оркестратор, а человек подключается к по-настоящему сложным инцидентам. Если вы только начинаете путь к контейнерам, разумно сперва навести порядок в образах и локальной разработке — этим занимается наша услуга Docker для Битрикс: разработка и продакшн, а уже поверх готовых образов мы выстраиваем кластер.

Чем кластер отличается от ручного масштабирования

Можно попробовать собрать отказоустойчивость руками: поднять несколько серверов, поставить перед ними балансировщик, написать скрипты выкатки и синхронизации файлов. Такой ручной кластер работает, пока с ним возится конкретный человек, который держит все детали в голове. Но скейлинг в нём — ручная операция, выкатка зависит от хрупких скриптов, а конфигурация расползается по серверам и перестаёт быть воспроизводимой. Kubernetes даёт то же самое декларативно: вы описываете желаемое состояние, а оркестратор сам приводит к нему фактическое и удерживает его.

Файлы, сессии и кэш в кластере требуют отдельного внимания, и здесь чаще всего ломаются самодельные решения. Загрузки Битрикса должны быть в общем постоянном хранилище, иначе разные поды увидят разные файлы. Сессии нужно вынести во внешнее хранилище, иначе балансировка будет выкидывать посетителей. Мы закрываем эти вопросы на этапе проектирования, а не латаем потом на проде. Если же ваша цель — именно горизонтальный рост под растущую аудиторию, у нас есть профильное направление Масштабирование Битрикс в Kubernetes, где автоскейлинг и распределение нагрузки прорабатываются под конкретные сценарии.

Когда кластер окупается, а когда хватит BitrixVM

Мы не уговариваем всех подряд переезжать в Kubernetes. Кластер оправдан, когда у вас заметные пики трафика, требование к непрерывной доступности, частые релизы или несколько окружений, которые должны вести себя одинаково. В этом случае автоскейлинг, выкатки без простоя и самовосстановление окупаются снятыми потерями от падений и разгрузкой команды. Если же сайт небольшой, трафик ровный, а релизы редкие, иногда честнее остаться на аккуратно настроенной BitrixVM и не усложнять инфраструктуру. На бесплатном аудите мы разбираем вашу нагрузку, частоту релизов и цену простоя и прямо говорим, что выгоднее: кластер или грамотно настроенная одиночная машина. Решение принимаем по вашим цифрам, а не по тому, что нам интереснее продать.

Как мы ведём перенос

Старт — это аудит текущей инфраструктуры Битрикс и контейнеризация. Мы разбираем, как у вас устроены файлы, кэш, сессии и интеграции, упаковываем приложение в контейнер и фиксируем зависимости. Дальше описываем манифесты ядра — поды, деплойменты и сервисы, выносим настройки в ConfigMap, секреты в Secret, подключаем постоянные тома для файлов. Затем настраиваем ingress с HTTPS, liveness и readiness пробы и стратегию rolling update. Только после проверки под нагрузкой переключаем боевой трафик в кластер, оставляя путь отката на каждом шаге.

Особое внимание — выкаткам. Сборка образа, прогон проверок и rolling update мы заворачиваем в CI/CD-пайплайн, чтобы релиз был рутинной операцией, а не событием с риском. Если у вас уже есть процессы доставки, мы встраиваемся в них, а если нет — выстраиваем с нуля. Для команд, которым важна именно автоматизация доставки и стабильные релизы поверх кластера, у нас есть отдельная услуга CI/CD для Битрикс-проектов, которую мы стыкуем с развёрнутым кластером.

Гарантии и прозрачность

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

Возражения, которые мы слышим чаще всего

«Kubernetes — это слишком сложно для нашего сайта». Сложность кластера прячется за манифестами и автоматизацией, а наружу выходит простой результат: сайт держит нагрузку и обновляется без простоя. Эксплуатация после переноса проще, чем ручное дежурство у одной машины, потому что рутинное восстановление берёт на себя оркестратор. Мы настраиваем кластер так, чтобы ваша команда работала с понятными процессами, а не с внутренностями оркестратора.

«У нас и так всё работает, зачем что-то менять». Пока не наступил пик или не отказал узел — да. Но цена одного крупного падения в сезон обычно перекрывает стоимость переноса. Калькулятор на этой странице помогает прикинуть, во сколько обходятся простои именно в вашем случае, чтобы решение опиралось на цифры, а не на ощущения.

«Боимся, что при переносе что-то сломается на боевом». Поэтому мы и готовим кластер параллельно действующему сайту и переключаем трафик только после проверки под нагрузкой. На каждом шаге есть путь отката, а старая инфраструктура остаётся доступной до тех пор, пока вы не убедитесь, что кластер работает стабильно.

Сценарии, под которые мы собираем кластер

Проекты на Битрикс очень разные, и кластер подстраивается под вашу модель, а не наоборот. Для нагруженного интернет-магазина ядром становится автоскейлинг под пики продаж и выкатки без простоя, чтобы акции и распродажи не превращались в стресс. Для портала с частыми релизами на первый план выходит CI/CD и rolling update, чтобы команда катила изменения хоть каждый день. Для B2B-платформы с несколькими окружениями важна воспроизводимость через конфиги и секреты и отказоустойчивость, чтобы отказ узла не останавливал работу контрагентов.

Отдельный сценарий — проекты с жёсткими требованиями к доступности, где простой недопустим в принципе. Там мы распределяем поды по нескольким узлам, настраиваем бюджеты доступности и проверяем поведение кластера при отказе узлов заранее, а не во время инцидента. Все эти сценарии живут на одной и той же базе из подов, деплойментов, сервисов, ingress, конфигов, секретов и хранилищ, но собираются в разной конфигурации под вашу задачу. Благодаря этому вы не плодите разрозненные решения, а управляете инфраструктурой из единого описания.

Чем кластер выгоднее альтернатив в долгую

У бизнеса обычно три пути обеспечить доступность под рост: бесконечно наращивать одну машину, собрать ручной кластер своими силами или перейти на оркестрацию в Kubernetes. Вертикальный рост упирается в потолок и переплату за запас. Ручной кластер держится на конкретном человеке и его скриптах, а с его уходом превращается в чёрный ящик. Оркестрация лишена обоих недостатков: масштаб и восстановление автоматизированы, конфигурация воспроизводима и описана как код, а эксплуатация не зависит от одного носителя знаний.

При этом кластер на Битрикс остаётся вашим. Мы разворачиваем его на выбранной вами инфраструктуре, передаём манифесты и доступы, и вы не платите за чужую закрытую платформу с помесячной арендой. Когда нагрузка и число релизов растут, именно этот путь оказывается и надёжнее, и гибче, и в долгую дешевле, чем бесконечное латание одной машины.

Этапы работы по шагам

Чтобы проект был предсказуемым, мы разбиваем его на понятные этапы с результатом на каждом. Первый этап — аудит и контейнеризация: разбираем инфраструктуру, упаковываем приложение в образ, фиксируем зависимости. Второй этап — манифесты ядра: поды, деплойменты, сервисы, конфиги, секреты и тома для файлов. Третий этап — ingress, healthchecks и стратегия выкатки, чтобы трафик ходил по HTTPS, а нездоровые поды выводились из ротации. Четвёртый этап — автоскейлинг и проверка под нагрузкой, чтобы подобрать лимиты ресурсов и убедиться, что кластер держит пики.

Дальше идут CI/CD и переключение боевого трафика, а после — мониторинг, алерты и передача. Каждый этап мы показываем на работающем кластере и проверяем на реальных сценариях, поэтому вы видите прогресс и платите за понятные блоки. Финальный шаг — передача манифестов, доступов и инструкций плюс обучение вашей команды эксплуатации. После запуска предлагаем сопровождение и развитие, но кластер полностью остаётся под вашим контролем.

С чего начать

Начните с разговора. Расскажите о вашем сайте на Битрикс, нагрузке, частоте релизов и требованиях к доступности — мы покажем, как будет устроен кластер, предложим состав под вашу задачу и пришлём смету в течение рабочего дня. Аудит инфраструктуры бесплатный, и по его итогам вы получите честную картину: что переносить в кластер в первую очередь, какой эффект это даст и за какой срок окупится. Обсудим ваш проект — и превратим доступность сайта в управляемую характеристику, которая не зависит от одной машины.

Вопросы и ответы

Частые вопросы о Kubernetes для Битрикс

Что такое Kubernetes простыми словами? +

Это система, которая запускает приложение не на одной машине, а как набор одинаковых копий-подов в кластере, и сама следит за их здоровьем и числом. Она перезапускает упавшие поды, добавляет новые под нагрузкой и распределяет между ними трафик. Проще говоря, это автопилот для инфраструктуры, который держит сайт доступным без постоянного ручного вмешательства.

Что такое под, деплоймент и сервис в Kubernetes? +

Под — это минимальная единица запуска, обёртка вокруг одного или нескольких контейнеров приложения. Деплоймент управляет числом одинаковых подов и порядком их обновления. Сервис даёт группе подов стабильный внутренний адрес, чтобы трафик не зависел от конкретной реплики. Вместе они образуют основу любого развёртывания в кластере.

Что такое ingress и зачем он нужен? +

Ingress — это точка входа внешнего трафика в кластер. Он принимает запросы по HTTPS, терминирует сертификаты и по правилам маршрутизации направляет запросы на нужные сервисы и поды. Без ingress кластер был бы доступен только изнутри, а с ним сайт открывается посетителям по обычному доменному имени.

Чем кластер Kubernetes отличается от обычной BitrixVM? +

BitrixVM — это одна настроенная машина, доступность сайта равна доступности этого сервера. Кластер распределяет приложение по нескольким репликам и узлам, сам масштабируется под нагрузку, переживает отказ узла и обновляется без простоя. Это переход от модели одной машины к модели отказоустойчивого набора реплик.

Кому нужен перенос Битрикс в Kubernetes? +

Нагруженным магазинам и порталам с пиками трафика, проектам с требованием непрерывной доступности, командам с частыми релизами и несколькими окружениями. Чем дороже простой и чем заметнее скачки нагрузки, тем сильнее эффект от автоскейлинга, выкаток без простоя и самовосстановления подов.

Как Битрикс упаковывается в поды? +

Приложение и веб-сервер собираются в контейнерный образ, который запускается внутри пода. Деплоймент описывает, сколько одинаковых подов держать и как их обновлять. Образ один на все окружения, а отличия задаются конфигами и секретами, поэтому поды воспроизводимы и взаимозаменяемы.

Сколько реплик Битрикса держать в кластере? +

Базовое число реплик подбираем под обычную нагрузку, а пиковое отдаём автоскейлеру. Минимум обычно две реплики, чтобы отказ одного пода не оставлял сайт без обслуживания. Точные значения определяем по результатам нагрузочного тестирования и профилю трафика вашего проекта.

Что такое rolling update и как он убирает простой? +

Rolling update — это стратегия обновления, при которой поды заменяются по одному. Новый под поднимается, проходит readiness-пробу и только после этого старый выводится из ротации. В каждый момент часть реплик обслуживает трафик, поэтому посетители не видят простоя при выкатке новой версии.

Можно ли откатиться, если новая версия сломалась? +

Да. Деплоймент хранит историю версий, поэтому откат на предыдущий рабочий релиз делается одной командой или кнопкой в пайплайне. Кластер заменяет поды обратно на старую версию тем же rolling update, без простоя и без ручного восстановления сервера.

Как распределяются поды по узлам кластера? +

Планировщик Kubernetes размещает поды по узлам с учётом доступных ресурсов и правил, которые мы задаём. Для отказоустойчивости настраиваем распределение реплик по разным узлам, чтобы отказ одного узла не уносил сразу все поды приложения. Это закладывается в манифесты на этапе проектирования.

Где хранятся настройки и пароли приложения? +

Настройки выносим в ConfigMap, а пароли, ключи и токены — в Secret. И то и другое подключается к подам отдельно от образа, поэтому один образ катится во все окружения, а чувствительные данные не попадают в код и в систему контроля версий.

Куда деваются загрузки и upload Битрикса при нескольких подах? +

Файлы, которые Битрикс пишет на диск, выносим в постоянное хранилище PVC, общее для всех реплик. Любой под видит одни и те же загрузки, кэш и upload, поэтому файлы не теряются при пересоздании пода и не расходятся между репликами.

Что такое PVC и постоянный том? +

PVC — это запрос на постоянное хранилище, которое не исчезает при пересоздании пода. Том PVC подключается к подам и хранит данные, переживающие перезапуск, в отличие от временного диска внутри контейнера. Для Битрикса в таком хранилище держим файлы, которые приложение пишет на диск.

Как не потерять сессии при балансировке между подами? +

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

Что такое liveness и readiness пробы? +

Liveness-проба проверяет, что под жив, и перезапускает его, если приложение зависло. Readiness-проба проверяет, готов ли под принимать трафик, и не пускает запросы в неготовый под. Вместе они держат в ротации только здоровые реплики и убирают проблемные без участия человека.

Что такое HPA и как работает автоскейлинг? +

HPA — это горизонтальный автоскейлер подов. Он смотрит на загрузку, например по процессору, и добавляет реплики, когда нагрузка растёт, и убирает их, когда спадает. Так сайт держит пики без ручного вмешательства, а вы не платите за лишние ресурсы в спокойное время.

Как кластер ведёт себя при отказе узла? +

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

Можно ли ограничить ресурсы, которые потребляют поды? +

Да. Для подов задаются запросы и лимиты по процессору и памяти. Запросы гарантируют ресурсы планировщику, а лимиты не дают одному поду съесть всё и задушить соседей. Правильные лимиты подбираем по результатам нагрузочного тестирования вашего приложения.

Как настраиваются CI/CD-выкатки в кластер? +

Пайплайн собирает контейнерный образ, прогоняет проверки, публикует образ в реестр и катит rolling update в кластер. Выкатка становится рутинной операцией без ручного захода на серверы. Если у вас уже есть процессы доставки, мы встраиваемся в них, если нет — выстраиваем с нуля.

Как мониторить состояние кластера и приложения? +

Настраиваем сбор метрик подов, узлов и приложения, дашборды и алерты на ключевые события — рост ошибок, нехватку ресурсов, перезапуски подов. Команда видит проблему в мониторинге заранее, а не узнаёт о ней от клиентов, и реагирует до того, как пострадают посетители.

Кто будет обслуживать кластер после запуска? +

Мы передаём манифесты, доступы и инструкции, поэтому эксплуатировать кластер сможет ваша команда. При желании берём сопровождение на себя: следим за мониторингом, обновляем компоненты, реагируем на инциденты и развиваем инфраструктуру по мере роста проекта.

Нужно ли держать отдельного DevOps-инженера после переноса? +

Не обязательно. После переноса рутинное восстановление и масштабирование берёт на себя оркестратор, а большинство операций сводится к выкаткам через пайплайн. Многие команды обходятся без выделенного DevOps, передав сопровождение нам или решая редкие задачи по запросу.

Сколько стоит развёртывание Битрикс в Kubernetes? +

Контейнеризация и базовые манифесты обычно начинаются от 90 000 рублей, боевой кластер с ingress, хранилищем и автоскейлингом — от 220 000, а вариант с несколькими окружениями и CI/CD — от 380 000. Цена зависит от нагрузки, числа окружений и интеграций. Точную смету присылаем после короткого брифа.

За какой срок реально перенести сайт в кластер? +

Контейнеризацию и базовый кластер запускаем за одну-три недели, полноценное развёртывание с CI/CD и мониторингом — от пяти недель. Точный срок зависит от сложности инфраструктуры и числа интеграций. Мы фиксируем его в смете до старта работ.

Будет ли простой сайта во время переноса? +

Нет. Кластер готовим параллельно действующему сайту и переключаем боевой трафик только после проверки под нагрузкой. На каждом шаге есть путь отката, а старая инфраструктура остаётся доступной, пока вы не убедитесь, что кластер работает стабильно.

Подойдёт ли наша сильно доработанная сборка Битрикса? +

Да. Мы переносим в кластер именно вашу конфигурацию, включая нестандартные доработки, модули и интеграции. На этапе аудита разбираем особенности файлов, кэша и сессий и закладываем их в манифесты, поэтому в кластере приложение ведёт себя так же, как на исходном сервере.

Что мы получаем по итогу проекта? +

Работающий кластер на вашей инфраструктуре, манифесты в системе контроля версий, доступы и документацию. Решение остаётся вашим без привязки к подрядчику: развивать и обслуживать кластер сможет как наша команда, так и любой другой исполнитель.

Начать проект

Обсудим перенос Битрикс в Kubernetes?

Расскажите о вашем сайте, нагрузке и требованиях к доступности — предложим состав кластера под вашу задачу и пришлём смету в течение рабочего дня.

  • Ответим в течение рабочего дня
  • Бесплатный аудит процессов и расчёт
  • NDA и фиксированная смета