· 14 мин чтения

K3s в офисе на 40 человек: когда маленький Kubernetes лучше Docker Compose

Меня зовут Семёнов Евгений Сергеевич, я 15 лет веду IT-аутсорсинг для юрлиц в Москве. В статье расскажу, как мы в АйТи Фреш внедряли K3s у клиента — маркетингового агентства с 40 сотрудниками — и почему в другом похожем проекте отказались от идеи наотрез. Kubernetes в малом бизнесе — как дорогой костюм: в одном случае обязательный, в другом — стыдный оверкилл.

Откуда вообще взялась задача

Клиент — агентство интернет-маркетинга с собственной разработкой (4 разработчика, 1 техлид, команда ведёт 3 внутренних продукта: CRM-лайт, таск-трекер и дашборд для клиентов). До нашего прихода всё крутилось на трёх VPS с Docker Compose: один сервер под прод, один под стейдж, один под CI. Каждый релиз — это был квест «разработчик пишет в Telegram админу: перекати компоуз». По пятницам, конечно, всё падало.

Мы зашли с аудитом и увидели набор проблем, который в 2025 году выглядит уже архаично:

Классический выход — брать Kubernetes. Но у нас 40 сотрудников, 3 разраба, и тащить полный управляющий кластер на 3 master-нодах было бы смешно. Тут на сцене появляется K3s.

Что такое K3s и почему он хорошо ложится на SMB

K3s — это дистрибутив Kubernetes от Rancher (теперь SUSE). Главная идея: весь управляющий стек упакован в один бинарник размером около 70 мегабайт. Вырезаны куски, которые нужны только облачным провайдерам (AWS/GCP/Azure cloud-controller), etcd заменён на SQLite по умолчанию (можно вернуть etcd для HA), встроены Traefik, local-path storage и helm-controller.

По API он на 100% совместим со «взрослым» Kubernetes. То есть любой манифест deployment/service/ingress из обычного куба работает без единой правки. Это важно — если завтра вы вырастете и захотите переезжать в «большой» кластер, манифесты не придётся переписывать.

Что получает SMB от K3s в сравнении с голым Docker Compose:

Архитектура, которую мы собрали клиенту

Финальная схема получилась компактной — три VPS на обычном российском хостере, плюс одна резервная нода для бэкапа состояния:

Общая стоимость инфраструктуры — 14 600 рублей в месяц за четыре VPS и около 4 000 рублей за статические IP и S3-хранилище под бэкапы.

Что установили в кластер сверху

КомпонентЗачем
Traefik (встроен в K3s)Ingress-контроллер, роутит HTTPS-трафик в сервисы
cert-manager + Let's EncryptАвтоматические SSL для всех доменов клиента
LonghornРаспределённое хранилище на всех нодах, реплика 3
Gitea + Act RunnerПриватный git-хостинг и CI/CD без GitHub Actions
HarborПриватный Docker Registry с подписью образов
Prometheus + GrafanaМониторинг нод, подов, приложений
Loki + PromtailЦентрализованные логи со всех подов
ArgoCDGitOps: git-репо = состояние прода, автоматический sync
Velero + ResticБэкап манифестов и PV в S3-хранилище российского провайдера

Как выглядит деплой после перехода на K3s

Процесс, который раньше занимал 40 минут и требовал админа, теперь выглядит так:

  1. Разработчик мёрджит ветку в main в Gitea.
  2. Gitea Act Runner собирает Docker-образ, прогоняет тесты, пушит в Harbor с тегом sha-abc123.
  3. В репозитории инфраструктуры (отдельный git-репо с манифестами) меняется один файл deployment.yaml: новая версия образа.
  4. ArgoCD видит изменение в git, применяет манифест в кластер. Rolling update поднимает новый под, дожидается health-check, выключает старый.
  5. Сообщение в Telegram-канал: «Deploy CRM v1.42 — success, rollout time 45s».

Админ не участвует в релизе. Если что-то сломалось, разработчик пишет kubectl rollout undo deployment/crm и через 30 секунд прод откатывается. Пятничные инциденты как класс исчезли.

Когда K3s — не ваш случай

Теперь честная часть, после которой клиенты меня уважают больше. Если у вас в офисе стоят 1С, файловый сервер, почта на Postfix и десяток внутренних веб-сервисов — K3s вам не нужен. Держите Docker Compose или даже просто systemd-юниты, и будет счастье.

K3s имеет смысл только если:

В прошлом году мы отказались от аналогичного проекта у клиента-стоматологической сети: у них стоял CRM Dental4Windows и десяток коробочных программ для рентген-снимков. Тащить туда куб — это как ставить Formula-1 на грунтовую дорогу. Оставили обычный Hyper-V и Docker там, где он нужен для одного сервиса.

Стоимость внедрения и сопровождения

ЭтапСрокСтоимость
Аудит существующего стека, проектирование1 день18 000 ₽
Заказ VPS, установка K3s, настройка HA1 день20 000 ₽
Установка Longhorn, Harbor, Gitea1 день20 000 ₽
Миграция приложений клиента в манифесты2 дня36 000 ₽
Настройка ArgoCD и пайплайнов1 день18 000 ₽
Мониторинг, логи, алерты1 день18 000 ₽
Обучение команды разработки на 4 часа0.5 дня0 ₽ (входит)
Итого проект7 рабочих дней130 000 ₽

Инфраструктура в месяц: 14 600 ₽ VPS + 4 000 ₽ прочее = 18 600 ₽. Экономия от пропавших пятничных инцидентов и от скорости релизов — около 80 часов работы админа в год, то есть 560 000 ₽. Проект окупается за 3 месяца.

Типичные грабли K3s, которые я собираю у клиентов

Нужен аудит — стоит ли вам идти в Kubernetes?

За 15 лет в АйТи Фреш я видел десятки команд, которые мучаются с куба, потому что им «сказали, что это модно». И столько же, кто живёт счастливо на Docker Compose, когда им по масштабу пора было в кластер. Приеду лично, посмотрю ваши сервисы, расскажу честно — нужен K3s или нет. Аудит бесплатный, в Москве и МО.

Телефон: +7 903 729-62-41
Telegram: @ITfresh_Boss
Семёнов Евгений Сергеевич, директор АйТи Фреш

FAQ — частые вопросы

Нужен ли Kubernetes офису на 40 человек?
В 7 из 10 случаев — нет. Если у вас 5–10 сервисов в Docker Compose и они живут спокойно — K3s не даст выигрыша. Но если есть команда разработки, которая катит обновления по несколько раз в неделю, или если количество сервисов уже перевалило за 15 — K3s экономит много нервов.
Чем K3s отличается от полного Kubernetes?
K3s — это дистрибутив от Rancher, где всё собрано в один бинарник 70 МБ. Убраны облачные провайдеры, etcd заменён на SQLite по умолчанию, kube-proxy упрощён. API совместим на 100% — манифесты работают без изменений.
Сколько ресурсов ест K3s?
Один master-нода комфортно живёт на 2 vCPU / 2 ГБ RAM. На Raspberry Pi 4 с 4 ГБ RAM успешно крутим внутренние сервисы малого офиса. Для продакшена берём 4 vCPU / 8 ГБ RAM с NVMe под данные.
Сколько стоит внедрение K3s в АйТи Фреш?
Базовый кластер из 3 нод с Traefik, cert-manager, Longhorn, мониторингом и CI-конвейером — 130 000 руб. Сроки: 7 рабочих дней. Далее — ведение на абонентке без доплаты.