Документация находится в разработке, может содержать неполную информацию.
Deckhouse Virtualization Platform (DVP) позволяет декларативно создавать, запускать и управлять виртуальными машинами и их ресурсами. DVP работает на основе Deckhouse Kubernetes Platform. Для управления ресурсами DKP/DVP используется утилита командной строки d8.
Сценарии использования
-
Запуск виртуальных машин с ОС, совместимой с x86_64.
-
Запуск виртуальных машин и контейнеризованных приложений в одном окружении.
Внимание Если вы планируете использовать Deckhouse Virtualization Platform в production-среде, рекомендуется разворачивать её на физических (bare-metal) серверах. Развертывание Deckhouse Virtualization Platform на виртуальных машинах также возможно, но в этом случае необходимо включить вложенную виртуализацию (nested virtualization).
Архитектура
Платформа включает в себя следующие компоненты:
- Ядро платформы (CORE) — основано на проекте KubeVirt и использует QEMU/KVM + libvirtd для запуска виртуальных машин.
- Deckhouse Virtualization Container Registry (DVCR) — репозиторий для хранения и кэширования образов виртуальных машин.
- Virtualization API (API) — контроллер, реализующий API пользователя для создания и управления ресурсами виртуальных машин.
После включения модуля в пространстве имен d8-virtualization разворачиваются следующие контроллеры и операторы:
Название | Компонент | Комментарий |
---|---|---|
cdi-operator-* |
CORE | Компонент ядра виртуализации для управления дисками и образами. |
cdi-apiserver-* |
CORE | Компонент ядра виртуализации для управления дисками и образами. |
cdi-deployment-* |
CORE | Компонент ядра виртуализации для управления дисками и образами. |
dvcr-* |
DVCR | Реестр для хранения образов. |
virt-api-* |
CORE | Компонент ядра виртуализации для управления дисками и образами. |
virt-controller-* |
CORE | Компонент ядра виртуализации для управления дисками и образами. |
virt-exportproxy-* |
CORE | Компонент ядра виртуализации для управления дисками и образами. |
virt-handler-* |
CORE | Компонент ядра виртуализации для управления дисками и образами. Должен присутствовать на всех узлах кластера, где будут запускаться ВМ. |
virt-operator-* |
CORE | Компонент ядра виртуализации для управления дисками и образами. |
virtualization-api-* |
API | API для создания и управления ресурсами модуля (образы, диски, ВМ и т.д.) |
virtualization-controller-* |
API | API для создания и управления ресурсами модуля (образы, диски, ВМ и т.д.) |
vm-route-forge-* |
CORE | Маршрутизатор для настройки маршрутов до ВМ. Должен присутствовать на всех узлах кластера, где будут запускаться ВМ. |
Виртуальная машина запускается внутри пода, что позволяет управлять виртуальными машинами как обычными ресурсами Kubernetes и использовать все возможности платформы, включая балансировщики нагрузки, сетевые политики, средства автоматизации и т. д.
API позволяет декларативно создавать, изменять и удалять следующие базовые ресурсы:
- образы виртуальных машин и загрузочные образы,
- диски виртуальных машин,
- виртуальные машины.