KubeVirt — проект для запуска виртуальных машин в Kubernetes. Он даёт ядро: механизмы запуска и управления ВМ через Kubernetes API. Но он не делает выборов за вас: CNI, CSI, CDI, мониторинг, UI и модель ролей остаются на стороне оператора. Если вы готовы собирать и поддерживать всю эту связку, KubeVirt подходит.
Deckhouse Virtualization Platform (DVP) использует форк KubeVirt как основу, но поставляет целую платформу. Идея простая: собрать вокруг KubeVirt всё, что нужно для эксплуатации ВМ в продакшене, и брать на себя согласование версий, сборку артефактов и интеграцию.
- Согласование компонентов и сборка. DVP собирает qemu, libvirt и другие бинарники из исходников и контролирует релизы. В «ванили» вы сами подбираете артефакты.
- Управляемая внешняя API. Внутренние API-группы KubeVirt скрыты: менять низкоуровневую конфигурацию напрямую нельзя. Внешняя модель API ориентирована на администраторов ВМ.
- UI и доступ через веб. Не всем администраторам удобно править манифесты — DVP даёт классическую виртуализацию через интерфейс.
- Сеть и миграции. Для живой миграции нужна сеть, которая сохраняет адреса и MAC при переезде, и тома, доступные для записи с нескольких узлов одновременно (RWX). DVP интегрирует такие решения.
- Хранилище и образы. DVP включает рекомендации и интеграции по СХД, CSI-драйверам и CDI для импорта образов и их хранения.
- RBAC и операционные процессы. Платформа предоставляет модель ролей под команды и снимает необходимость проектировать всё с нуля.
- Мониторинг и алертинг. Метрики есть в «ядре», но дашборды, пороги и интеграция со страницами инцидентов — в составе платформы.
DVP сознательно ограничивает изменение внутренних объектов KubeVirt. Контроллеры платформы отвечают за поведение ВМ, а внешний API отражает понятия администратора. Это уменьшает риск «чёрного ящика» после ухода одного-двух инженеров: платформа несёт ответственность за согласование версий и CVE в поставляемых артефактах.
- Командам, которые хотят классическую виртуализацию через UI и не готовы держать экспертов по CNI и CSI.
- Организациям, где важно снизить операционные расходы на согласование и поддержку множества компонентов.
Кто всё ещё соберёт собственное решение
Если вы — опытная команда, у которой есть устоявшийся GitOps-процесс, эксперты по CNI/CSI и желание управлять каждой частью стека, «ванильный» KubeVirt остаётся инструментом. Он даёт гибкость, но требует ресурсов на сборку и сопровождение.
В материале перечислены разделы: архитектура и философия API, графический интерфейс, хранилище и работа с образами, управление ВМ, миграция, сеть, безопасность, мониторинг, таблица отличий DVP и KubeVirt и инструкции, как попробовать платформу в деле.