Cloud Containers // Kubernetes
VK Cloud: Sales Manager
Cloud Containers
Облачные сервисы дают нам возможность развернуть и создать всю ИТ-инфраструктуру, начиная с железа и заканчивая предоставлением отдельных приложений. Поверх железа можно установить ОС, а на ОС — приложения. Всё это упаковано в виртуальные машины, которые предоставляют изолированную среду, где приложения гарантированно работают.
Но что делать, когда у вас становится слишком много приложений, а от работы каждого приложения зависит весь ваш бизнес? Что делать, когда «падает» одно приложение, и все другое программное обеспечение тоже перестает функционировать?
Решение: изолировать каждое приложение друг от друга, обеспечивая таким образом независимое функционирование каждого отдельного ПО. Это происходит методом контейнеризации, то есть упаковки ПО в контейнеры. Контейнеры содержат все необходимое для запуска ПО, включая программный код, библиотеки, настройки. Приложения в контейнерах запускаются в изолированной среде, не влияющей на основную операционную систему.
Главное и принципиальное отличие контейнера от ВМ в том, что он использует ресурсы и ядро основной ОС, а не каждой гостевой ОС по отдельности. То есть, все процессы запускаются в основной системе, а контейнеры специальным образом изолируются от основной системы и друг от друга. Несколько контейнеров, размещенных на одном сервере, используют ресурсы сервера совместно, тем самым экономя их.
У контейнеров есть следующие характеристики:
- Изоляция друг от друга и от операционной системы. Это позволяет легко мигрировать между инфраструктурами или хостинг-провайдерами.
- Размещение большого количества контейнеров в пределах одного сервера. Умные алгоритмы балансировки нагрузки и выделения ресурсов позволяют оптимизировать использование оборудования.
- Высокая степень контроля над жизненным циклом контейнера. Контейнеры значительно меньше, чем виртуальные машины. Поэтому ими гораздо проще управлять и отслеживать их жизненный цикл.
- Гибкость контроля и безопасности. Изоляция позволяет отслеживать угрозы и быстрее на них реагировать. Автоматизация проверок безопасности становится неотъемлемой частью процесса разработки.
- Вариативность масштабирования. Малый размер контейнера позволяет моментально создавать и выполнять другие операции в случае необходимости, что сегодня критически важно для веб-проектов.
Kubernetes
Чем больше становится контейнеров, тем сложнее ими управлять. Управление и поиск проблем даже для десятков контейнеров — всегда потерянные часы. Контейнеры нужно разворачивать, обновлять, масштабировать, отслеживать их работоспособность, а при сбоях — перезапускать или останавливать. Чтобы упростить эти процессы, существуют системы управления контейнерами, и лидирует среди них Kubernetes.
Kubernetes — это платформа, поддерживающая контейнеризированные приложения. Она берет на себя отслеживание их «здоровья», исправление проблем и множество других задач.
За счет механизмов расширения Kubernetes можно дополнять функциональностью, специфичной для конкретных задач. Kubernetes называют операционной системой нового века. Это неудивительно: даже в самом базовом виде эта платформа обладает богатой функциональностью.
В интерфейсе VK Cloud работа с Kubernetes реализована в виде сервиса Cloud Containers:

Так или иначе, сервис для управлениями кластерами есть у любой современной облачной платформы, однако Kubernetes внутри VK Cloud обладает рядом уникальных преимуществ, а именно:
- Автомасштабирование
- Кросс-зональность (размещение воркер-нод в разных ЦОД)
- Аддоны, которые позволяют нативно ставить различные расширения для Kubernetes
VK Cloud предоставляет Kubernetes как облачный сервис (K8S-aaS). Сам сервис имеет сертификацию Certified Kubernetes — Hosted организации CNCF (Cloud Native Computing Foundation). Это значит, что он отвечает всем требованиям организации CNCF к платформенным сервисам Kubernetes и полностью совместим со стандартным API. Подробнее об этом здесь.

На Kubernetes в VK Cloud можно запустить любой продукт, который совместим с обычной On-Premise инсталляцией, вроде ServiceMesh (Istio, linkerd), инструментов обеспечения безопасности (Open Policy Agent), решений для BigData/ML (kubeflow, spark).

Одна из главных особенностей Kubernetes в VK Cloud — автомасштабирование кластера в зависимости от нагрузки. За это отвечает Kubernetes Cluster Autoscaler. Этот инструмент добавляет дополнительные узлы (ноды) или освобождает бездействующие — таким образом, у клиента всегда столько нод, сколько ему нужно. Это экономит ресурсы в общем на 60%. Параметры автомасштабирования задаются самим пользователем при конфигурировании кластера.
Также на платформенном Kubernetes в VK Cloud можно масштабироваться до 100 нод в нод-группе и 50 групп-нод:

Главные преимущества Kubernetes в VK Cloud:
- Возможность сделать стоп/старт кластера целиком. Это полезно для тестовых сред, так как позволяет экономить средства, когда ресурсы кластера не утилизируются;
- Persistent Volumes интегрированы с нашим сервисом блочных устройств, посредством CSI-плагина;
- Сервис интегрирован с нашими платформенными балансировщиками нагрузки;
- Имеются группы воркер-нод, в том числе в разных зонах доступности;
- Возможность сделать rolling update без простоя, как для минорных, так и для мажорных версий Kubernetes.
Более подробно о контейнеризации и контейнерах можно почитать в документации VK Cloud.
О контейнеризации от азов до работы с Kubernetes хорошо написано в этой статье.
Cloud Сontainers 1.0 Vs 2.0
В 2025 году VK Cloud представил улучшенную версию сервиса — Cloud Containers 2.0. Ниже рассмотрим, чем эти версии отличаются.
| Параметр | Cloud Сontainers 1.0 | Cloud Сontainers 2.0 |
| Размещение master и worker-нод | Master- и worker-ноды запускаются в проекте клиента | Изоляция master- и worker-нод в сервисном проекте |
| Системные компоненты в проекте клиента | 26 системных компонентов в кластере клиента | Только 2 системных компонента в кластере клиента |
| Сетевое развертывание | Требуется поддержка Shadow Port для изолированных сетей | Разворачивание кластера в изолированных сетях |
| Сетевой стек | Поддержка SDN Sprut и Neutron | Поддержка SDN Sprut и сервисных сетей |
| Самовосстановление (Self-healing) | Ноды не восстанавливаются при сбое | Самовосстановление нод |
| Операции с кластером | Последовательное обновление, масштабирование или изменение настроек кластера | Параллельные действия над кластером |
| GPU-вычисления | Поддержка вычислений на GPU нодах | Поддержка вычислений на GPU нодах |
| Тарификация | Отсутствует детализация | Детализация тарификации master- и worker- нод |
| Квоты | Используются общие квоты проекта | Отдельные квоты для сервиса |
Возможности Cloud Containers
Запуск за 10 минут
Полностью автоматизированный режим управления сервисом для минимизации сбоев и снижения нагрузки на команду. Обновление версий, настройка, подключение аддонов — в пару кликов.
Технологии: Fully-Managed режим кластеров.
Пример: Вместо того, чтобы DevOps-инженер тратил 2-3 дня на ручную настройку кластера (установка компонентов, настройка сети, интеграция мониторинга), в VK Cloud достаточно выбрать параметры в интерфейсе — и через 10 минут кластер будет готов к деплою приложений.
Непрерывность работы
Cloud Containers обеспечивает непрерывную доступность сервисов, даже при потере зоны доступности или сбое в работе кластера.
Технологии: Мультизональность, Восстановление нод (Self-Healing), Встроенный мониторинг.
Пример: Интернет-магазин работает на кластере с нодами в трёх зонах доступности. Во время профилактических работ в одном дата-центре трафик автоматически перенаправляется на ноды в других зонах — пользователи не замечают сбоя. Если нода «упала» из-за аппаратной проблемы, Self-Healing поднимает новую почти мгновенно без участия администратора.
Защищённость и изолированность
Технология Kube-in-Kube и изоляция системных компонентов повышают надёжность работы кластеров Kubernetes.
Технологии: Kube-in-Kube, Изоляция системных компонентов.
Пример: В традиционной архитектуре сбой в системном компоненте (например, в CoreDNS) может «уронить» весь кластер. В архитектуре Kube-in-Kube control plane вынесен в отдельный управляющий кластер — проблемы пользовательской нагрузки не затрагивают системные компоненты, и наоборот.
Производительность
Низкая задержка и высокая пропускная способность за счёт оптимизированной сетевой модели. Одновременное добавление и удаление рабочих нод в рамках нод-группы.
Технологии: SDN Sprut, Параллельные вычисления.
Пример: Финтех-сервис обрабатывает 50 000 транзакций в секунду. Благодаря SDN Sprut (собственная разработка VK) сетевые задержки между подами составляют менее 1 мс, что критично для real-time операций. При масштабировании 10 новых нод добавляются параллельно, а не последовательно — кластер готов к нагрузке за минуты, а не за час.
Экономия до 60%
Автоматическое масштабирование и посекундная оплата экономят бюджет.
Технологии: Автоматическое масштабирование, Функция Start/Stop, Раздельная тарификация рабочих и master-нод.
Пример: SaaS-платформа для B2B имеет пиковую нагрузку с 9:00 до 18:00. Автоскейлинг днём держит 20 нод, ночью — 4 ноды. Тестовый кластер выключают на ночь через Start/Stop.
Расширенный мониторинг и алертинг
Prometheus Stack + Grafana с настроенными дашбордами "из коробки".
Технологии: Cloud Monitoring, Маркетплейс аддонов.
Пример: После установки аддона мониторинга команда сразу получает 15+ готовых дашбордов: утилизация CPU/RAM по нодам, состояние подов, latency запросов, очереди в etcd. Алерт приходит за 30 секунд до того, как закончится место на диске ноды — инцидент предотвращён без даунтайма.
Готовая интеграция
Совместимость с инструментами VK Cloud и экосистемой Kubernetes. Поддержка контроллеров, политик, модулей и интеграций для использования всех возможностей Kubernetes.
Технологии: Полная совместимость с Kubernetes API (сертификация CNCF).
Пример: Команда использует Terraform для IaC, Helm для деплоя, Istio для service mesh, интегрирует кластер с Cloud Databases (PostgreSQL) и Cloud Storage (S3). Всё работает через стандартные API — нет привязки к конкретному вендору, можно переиспользовать существующие чарты и пайплайны без переписывания.