Виртуализация в Deckhouse
Kubernetes Platform

Система управления виртуальными машинами с использованием стандартных сетевых политик и сервисов Kubernetes

Единая инфраструктура для виртуальных машин и контейнеров

Создание и управление виртуальными машинами и образами

Жизненным циклом виртуальных машин (ВМ) и их ресурсами можно управлять декларативно как объектами Kubernetes через стандартные манифесты

Автоматизация развёртывания ВМ и сервисов

Мы используем подход Infrastructure as Code — полное управление ВМ, сетями (включая VLAN и балансировщики) и дисками доступно через единый API с поддержкой Terraform и GitOps

Нативная работа ВМ и контейнеров в одном окружении

Виртуализация в Deckhouse Kubernetes Platform (DKP) строится на базе KubeVirt и обеспечивает работу ВМ и контейнеров в едином контуре без разделения инфраструктуры с общими стандартами сети, безопасности и управления

Балансировка нагрузки для ВМ 
и контейнеров

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

Гибкое управление и контроль использования ресурсов

Ресурсы управляются и контролируются через механизмы квот и лимитов, гарантирующих приоритетность нагрузок и максимальную эффективность использования инфраструктуры

Встроенный аудит и регистрация событий безопасности

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

Как работает виртуализация в DKP

Виртуализация интегрирована в DKP на всех уровнях: к ВМ применяются политики Cilium, используется стандартная балансировка через Kubernetes Service, а все операции отражаются в общей системе мониторинга

Архитектура

Модуль виртуализации включает три компонента:

  • Ядро на базе KubeVirt, использующее QEMU/KVM и libvirtd для запуска ВМ с аппаратной производительностью и стабильностью
  • DVCR — специализированный реестр для хранения и кэширования образов ВМ
  • Virtualization API — контроллер для управления виртуальными машинами как стандартными объектами Kubernetes
Управление ресурсами

Все операции с виртуальными машинами выполняются декларативно через YAML‑манифесты:

  • Создание ВМ, дисков и образов как стандартных Kubernetes‑объектов
  • Использование шаблонов для быстрого развёртывания инфраструктуры
  • Единая модель работы с сетью и хранилищем — ВМ используют те же PVC/PV и сетевые политики, что и контейнеры
Доступ и безопасность

Пользователи взаимодействуют с ВМ через единый безопасный контур платформы:

  • Подключение к запущенным виртуальным машинам через SSH, VNC или веб‑консоль
  • Сетевой трафик ВМ подчиняется тем же политикам безопасности, что и трафик контейнеров
  • Поддержка живой миграции позволяет перемещать ВМ между узлами без остановки

Запуск модуля виртуализации в кластере

Веб-интерфейс DKP позволяет отслеживать состояние виртуальных машин, управлять ресурсами и рапределять их, а также диагностировать сбои кластера

Возможности виртуализации в DKP

Виртуализация доступна как модуль, интегрированный в редакции Deckhouse Kubernetes Platform — Community Edition, Standard Edition+, Enterprise Edition, Certified Security Edition Pro*

Редакции
Community EditionStandard Edition+Enterprise EditionCertified Security Edition Pro*
Интерфейсы управления
Управление всеми ресурсами через API, CLI и веб-интерфейс
Декларативное создание всех ресурсов (порядок неважен, система автоматически разрешает зависимости между объектами)
Отображение состояния ресурса и связанных с ним проблем в его статусе в реальном времени
GitOps и IaC
Полноценная поддержка GitOps-подхода: хранение конфигурации ВМ, дисков и прочих ресурсов в Git
Поддержка интеграции с Terraform для описания и автоматического создания инфраструктуры
Поддержка интеграции для работы с Ansible
Поддерживаемые окружения
Запуск виртуальных машин с x86-64-совместимыми операционными системами
Совместное использование ВМ и контейнеризованных приложений в одном кластере Kubernetes
Поддержка вложенной виртуализации (nested virtualization) для тестовых и лабораторных сценариев
Образы виртуальных машин
Автоматическое скачивание и хранение образов во встроенном реестре образов (DVCR)
Уровни видимости образов:
— Проектные образы (для отдельного пространства имен/проекта)
— Кластерные образы (общие для всего кластера)
Источники образов:
— Загрузка образов из HTTP-источников
— Загрузка из Docker
— Загрузка из локальных файлов через CLI или веб-интерфейс
— Возможность создания образов из существующих дисков или снимков дисков
Поддерживаемые форматы:
— Форматы образов: qcow2, vmdk, raw, iso, vdi, включая сжатые варианты (gz, xz)
— Автоматическое определение формата образа при загрузке
Диски виртуальных машин
Автоматический выбор оптимальной конфигурации диска в зависимости от используемого класса хранения (storage class)
Создание и управление дисками:
— Создание дисков из образов
— Создание пустых дисков заданного размера
— Загрузка из локальных файлов через CLI или веб-интерфейс
— Автоматическое определение размера диска при создании из образа (по содержимому образа)
Снимки и восстановление
— Создание консистентных снимков дисков
— Восстановление дисков из ранее созданных снимков
Экспорт дисков и снимков дисков для переноса или бэкапа (доступно при использовании дополнительного модуля storage-volume-data-manager)
Конфигурирование классов ВМ
Централизованное управление параметрами ВМ через классы виртуальных машин
Настройка типа CPU для ВМ
Автоматическое создание универсального CPU на основе общих инструкций выбранных узлов
Политики сайзинга ресурсов ( CPU / Память / гарантированная доля CPU )
Управление размещением ВМ по узлам
Конфигурация ВМ
Конфигурация ресурсов ВМ:
— Настройка количества ядер (vCPU)
— Задание гарантированной доли процессорного времени (аналог переподписки CPU)
Автоматическая конфигурация топологии CPU (расчёт сокетов и ядер) для лучшей совместимости с гостевыми ОС
— Настройка объёма оперативной памяти
ОС и кастомизация:
— Выбор типа загрузчика: BIOS, EFI, EFI с Secure Boot
— Поддержка паравиртуализации
— Выбор оптимизированного профиля ОС (Windows / Generic) для автоматической настройки драйверов и параметров
— Кастомизация ВМ при первом запуске с помощью cloud-init или Sysprep
Подключаемые блочные устройства:
— Подключение дисков к ВМ на лету (hotplug)
— Увеличение размера диска без перезагрузки ВМ
— Подключение образа к ВМ на лету (hotplug)
— Подключение к ВМ до 16 блочных устройств: постоянные диски, hotplug-диски, образы
Живая миграция между хранилищами класса хранения диска для работающих ВМ
Политики размещения и жизненный цикл
Планирование и размещение:
— Автоматическое планирование ВМ на узлах в зависимости от доступных ресурсов (CPU, память, диски)
— Настройка правил размещения по отношению к узлам или другим ВМ (Affinity/AntiAffinity)
— Поддержка размещения ВМ на заданных группах узлов
— Перебалансировка ВМ в зависимости от загрузки узла (требуется модуль descheduler)
Политики запуска:
— Политики запуска ВМ
— Политики автоматического применения изменений, которые требуют перезагрузки ВМ
Доступ и подключение к ВМ
Подключение к ВМ через VNC
Подключение через последовательный порт (serial console)
Подключение к ВМ по произвольному порту напрямую через API-прокси
Подключение по SSH напрямую через API, без необходимости прямого сетевого доступа до узлов
Операции с ВМ
Базовые операции управления ВМ: запуск, остановка, перезагрузка, миграция
Снимки и клоны ВМ
Создание консистентных снимков ВМ
Восстановление ВМ из снимка
Клонирование ВМ: Создание клона из снимка ВМ
Клонирование ВМ: Создание клона из другой ВМ
Сетевая конфигурация
Автоматическое или статическое назначение IP-адреса для default-сети
Резервирование IP-адреса default-сети для ВМ на все время ее существования
Автоматическое создание MAC-адресов для дополнительных сетевых интерфейсов
Подключение ВМ к дополнительным сетям:
— Подключение дополнительных проектных или кластерных сетей для ВМ (при использовании модуля SDN)
— Возможность подключения ВМ как к виртуальной сети (прямое подключение), так и к изолированным VLAN
Доступ к ВМ через стандартные объекты Kubernetes:
— ClusterIP
— NodePort
— LoadBalancer
— Ingress
— Headless Service
Живая миграция
Живая миграция ВМ между узлами без простоя сервиса (downtime 100ms)
Настраиваемая политика живой миграции для автоматического снижение нагрузки на ВМ при необходимости для успешного завершения миграции
Возможность отменить миграцию ВМ в процессе выполнения
Автоматическая миграция ВМ при:
— Обновлениях узлов
— Эвакуации узлов (drain, плановые работы)
— Изменении параметров размещения ВМ
Автоматическая балансировка нагрузки:
— Миграция ВМ при перегрузке отдельных узлов
— Выравнивание потребления CPU/памяти между узлами
Мониторинг и диагностика
Готовые дашборды для мониторинга:
— Отдельных ВМ
— Групп ВМ в рамках проектов/пространств имен
Подробные метрики ВМ
Контроль плоскости управления:
— Метрики компонентов плоскости управления
— Готовые алерты для ключевых компонент
Безопасность
Готовые наборы ролей (RBAC) для различных категорий пользователей
Тонкая настройка прав доступа:
— На создание и изменение ресурсов (ВМ, диски, образы)
— На подключение к ВМ (консоль, SSH, VNC)
— На операции по управлению состоянием ВМ (старт, стоп, миграция и прочее)
Безопасность платформы
— Все основные компоненты используют distroless-образы
— Регулярное устранение уязвимостей и обновление компонентов в составе модуля
— Отсутствие внешних зависимостей
— Полный контроль над цепочкой сборки и поставки

*Функциональные возможности редакции станут доступны после получения сертификата ФСТЭК России

Мы используем файлы cookie, чтобы сделать работу с сайтом удобнее.
Подробнее — в политике обработки персональных данных и политике использования файлов «cookie».

Помогите нам сделать сайт удобнее — поделитесь своим мнением в нашем исследовании.
Мы будем очень признательны и предложим полезные бонусы!