DevOps & CI/CD

Гипервизоры (VirtualBox/KVM/Hyper-V)

Сравнение основных гипервизоров: VirtualBox и Hyper-V для рабочих станций, KVM и QEMU как стандарт серверной виртуализации в Linux.

Что такое гипервизор и какие они бывают

Гипервизор (hypervisor) — программа, которая запускает виртуальные машины на физическом хосте и делит между ними ресурсы. Продуктов много, но выбор на практике сводится к четырём.

VirtualBox KVM Hyper-V VMware ESXi
Тип 2 (в ОС) 1 (модуль ядра Linux) 1 (под Windows) 1 (bare-metal)
Хост Windows, Linux, macOS Linux Windows 10/11 Pro, Server Голое железо
Лицензия GPLv3 GPLv2 В составе Windows Проприетарная
Производительность Средняя Близко к нативной Высокая Высокая
Где применяют Ноутбук, учёба Серверы, облака, хостингWindows-инфраструктура Корпоративные ЦОД

VirtualBox

VirtualBox (полное имя — Oracle VM VirtualBox, в разговоре «виртуал бокс») — бесплатный гипервизор типа 2 от Oracle. Ставится как обычная программа на Windows, Linux или macOS и запускает гостевую ОС в окне.

Ниша — рабочая станция: попробовать Linux, не снося Windows; поднять тестовый стенд; собрать окружение под старую систему. Для production не годится: тип 2 платит производительностью за проход через хостовую ОС.

VBoxManage list vms                      # список ВМ
VBoxManage startvm ubuntu --type headless
VBoxManage snapshot ubuntu take clean-install
VBoxManage snapshot ubuntu restore clean-install
VBoxManage controlvm ubuntu acpipowerbutton

Обязательно поставьте внутрь гостя Guest Additions — без них не будет нормального разрешения экрана, общих папок и буфера обмена. Важное ограничение: VirtualBox конфликтует с Hyper-V и WSL2 за аппаратную виртуализацию — включённый Hyper-V роняет скорость VirtualBox в разы.

KVM

KVM (Kernel-based Virtual Machine) — модуль ядра Linux, превращающий само ядро в гипервизор. Формально это тип 2 (ядро — полноценная ОС), фактически по производительности и применению — тип 1: между гостем и процессором нет лишних слоёв.

KVM — стандарт серверной виртуализации в Linux. На нём построены OpenStack, Proxmox и большинство провайдеров VPS и облачных серверов.

egrep -c '(vmx|svm)' /proc/cpuinfo    # поддержка процессора
sudo apt install qemu-kvm libvirt-daemon-system virtinst
kvm-ok

virt-install --name db-01 --vcpus 4 --memory 8192 \
  --disk size=50,bus=virtio --network bridge=br0,model=virtio \
  --os-variant ubuntu24.04 --location <url> --graphics none

virsh list --all
virsh dominfo db-01
virsh migrate --live db-01 qemu+ssh://host2/system   # миграция без остановки

QEMU — и при чём тут KVM

QEMU (Quick Emulator) — эмулятор, умеющий исполнять код чужой архитектуры: запустить ARM-систему на x86. Эмуляция гибкая, но медленная.

KVM без QEMU бесполезен: он даёт только аппаратное ускорение процессора и памяти, а виртуальные диски, сеть и чипсет создаёт QEMU. Поэтому на практике их используют вместе — QEMU эмулирует устройства, KVM берёт на себя исполнение инструкций гостя на реальном CPU.

  • QEMU без KVM — эмуляция чужой архитектуры, медленно.
  • QEMU + KVM — «родная» архитектура на реальном железе, почти нативная скорость. Это и есть то, что все называют KVM.
  • libvirt / virsh / virt-manager — слой управления поверх, чтобы не писать километровые команды QEMU руками.

Hyper-V

Hyper-V — гипервизор Microsoft типа 1, встроенный в Windows 10/11 Pro и Windows Server. Хотя Windows выглядит «хостом», после включения Hyper-V сама Windows становится привилегированной ВМ поверх гипервизора — отсюда конфликты с VirtualBox.

# Проверить и включить (PowerShell от администратора)
Get-ComputerInfo -Property "HyperV*"
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All

New-VM -Name web01 -MemoryStartupBytes 4GB -Generation 2 `
  -NewVHDPath C:\VM\web01.vhdx -NewVHDSizeBytes 60GB
Get-VM
Start-VM -Name web01
Checkpoint-VM -Name web01 -SnapshotName before-update

На Hyper-V работают WSL2 и Docker Desktop для Windows — даже если вы никогда не открывали его консоль.

Что выбрать

  • Учёба, тестовый стенд на ноутбуке — VirtualBox: бесплатно и одинаково на всех ОС.
  • Windows-хост и нужна скорость — Hyper-V, он уже в системе.
  • Linux-сервер, production, хостинг — KVM: производительность, живая миграция, GPU passthrough, никаких лицензий.
  • Парк хостов с веб-панельюProxmox поверх того же KVM.

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

Готовы запустить GPU-задачу?

Запустить GPU-сервер