Главная Вики DevOps и разработка

Kubernetes: как управлять сотней контейнеров, как одним

Kubernetes (k8s) — открытая платформа оркестрации контейнеров. Она берёт описание желаемого состояния («хочу 5 копий сервиса А, 3 копии сервиса Б, доступ через такой-то домен») и сама поддерживает это состояние на ферме серверов. Один из стандартов де-факто для запуска продакшн-приложений.

Зачем это нужно бизнесу

Когда сервисов 2–3 — их можно поднимать вручную: «вот docker run, вот балансировщик, вот мониторинг». Когда сервисов десятки, а серверов под ними тоже десятки, ручное администрирование превращается в нерешаемую задачу. Кто перезапустит контейнер ночью, если упал сервер? Как раскатить новую версию без даунтайма? Как обновить десятки приложений без копи-пасты?

Kubernetes снимает эту нагрузку с людей. Декларативно описанная конфигурация хранится в git, кластер сам подгоняет реальность под описание. Упал сервер — поды переезжают на живые узлы. Нагрузка выросла — автоматически поднимаются дополнительные реплики. Нужна новая версия — раскатывается стратегией rolling update без простоя пользователей.

Для бизнеса это выражается в трёх вещах. Доступность: типичные SLO в 99,9–99,99% становятся достижимыми не подвигом, а конструкцией. Стоимость: благодаря плотности контейнеров и автомасштабированию инфраструктура утилизируется лучше — компании платят не за пиковую нагрузку 24/7, а за реальную. Скорость: команда разработки выкатывает изменения чаще и спокойнее.

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

Как это работает

Кластер состоит из управляющих узлов (control plane) и рабочих (workers). На рабочих узлах запускаются поды — минимальная единица планирования, обычно один контейнер на под. Control plane содержит API-сервер (точка входа для всех команд), etcd (база с состоянием кластера), scheduler (распределяет поды по узлам) и controller manager (поддерживает желаемое состояние).

Основные объекты, с которыми работают инженеры:

Поверх базовых объектов строится экосистема. Helm — пакетный менеджер для приложений в кластере. Operators — расширения, которые управляют сложными системами (базами данных, очередями, кэшами) специфическими для них способами. Service mesh (Istio, Linkerd) — отдельный слой для управления трафиком, mTLS, наблюдаемости. Argo CD / Flux — GitOps-инструменты, которые подгоняют состояние кластера под git-репозиторий.

Варианты размещения кластера различаются по эксплуатационной нагрузке. Управляемые сервисы (Yandex Managed Kubernetes, Selectel MKS, в зарубежных облаках — EKS, GKE, AKS) снимают заботу о control plane. Self-hosted кластеры на собственных серверах (kubeadm, k3s, RKE2) — больше контроля, больше работы у инженеров. Гибридная схема — control plane в облаке, worker-узлы on-premise через VPN, актуально при требованиях 152-ФЗ и 187-ФЗ.

Когда нужно компании

Kubernetes имеет смысл, если:

Если приложений 1–2 и нагрузка предсказуемая — k8s избыточен, проще обойтись docker-compose на пары серверов с балансировщиком.

Что включает наша услуга

Связанные термины

Получить расчёт

Зайдите в калькулятор, отметьте чекбокс «Kubernetes — оркестрация контейнеров» и получите ориентир по цене. Финальная смета — после обследования инфраструктуры и нагрузки.

Связанные термины
Расчёт стоимости

Хотите оценить стоимость под свою инфраструктуру?

Откройте калькулятор, отметьте нужные услуги — получите ориентир за минуту. Финальная смета после обследования (±15%).

Открыть калькулятор Получить КП