hostprofi.ru
Подобрать хостинг
Термин·буква K

KVM

краткое определение

KVM (Kernel-based Virtual Machine) — модуль ядра Linux, превращающий его в гипервизор Type 1. Каждая виртуальная машина на KVM получает собственное изолированное ядро ОС, полный доступ к виртуализированному железу и производительность до 95% от bare-metal.

KVM — стандарт виртуализации в Linux, встроенный в ядро начиная с версии 2.6.20 (2007). Технически KVM превращает Linux-хост в гипервизор Type 2 с характеристиками Type 1: ядро хоста само управляет ВМ без дополнительного гипервизора-прослойки. Каждая ВМ работает как изолированный процесс с доступом к аппаратному ускорению Intel VT-x / AMD-V.

Как работает

KVM состоит из двух компонентов: модуля ядра kvm.ko (общая логика) и процессорно-специфичного модуля kvm-intel.ko или kvm-amd.ko. Эти модули активируют режим VMX/SVM на процессоре, который позволяет выполнять гостевой код напрямую без транзакции через гипервизор.

Для управления ВМ используется QEMU — эмулятор, который предоставляет виртуальные устройства (диски, сетевые карты, BIOS). KVM обеспечивает аппаратное ускорение процессора и памяти, QEMU — эмуляцию периферии. Паравиртуальные драйверы virtio ускоряют ввод-вывод. Управляющим слоем служит libvirt с утилитами virsh, virt-manager.

Каждая ВМ получает изолированную память, виртуальные CPU (vCPU), диск (vDisk) и сетевые адаптеры (vNIC). Снапшоты (snapshot), live migration между хостами и балунинг памяти — стандартные возможности KVM.

История

KVM разработан Avi Kivity (Qumranet) и принят в ядро Linux в феврале 2007 года (версия 2.6.20). Red Hat приобрела Qumranet в 2008 году и стала главным спонсором разработки KVM. С 2010-х KVM — доминирующий гипервизор для Linux-серверов и облачных платформ (OpenStack, AWS Nitro, Google Cloud GCE).

Ключевые отличия от похожих терминов

KVM-виртуализация даёт полную изоляцию ядра ОС, в отличие от OpenVZ где все ВМ разделяют одно ядро хоста. KVM медленнее OpenVZ для контейнерных задач, но безопаснее и гибче. VMware ESXi — коммерческий аналог с более развитыми инструментами управления корпоративного уровня.

Конфигурация KVM-хоста

Стандартная конфигурация: Ubuntu 22.04 или Debian 12, пакеты qemu-kvm libvirt-daemon-system virtinst, управление через libvirt. Для дисков ВМ — LVM-тома (производительнее) или qcow2-образы (удобнее для снапшотов). Proxmox VE — популярная оболочка над KVM.

KVM vs OpenVZ

OpenVZ — контейнерная виртуализация с общим ядром: меньше накладных расходов, но нет изоляции ядра. KVM — полная аппаратная виртуализация: каждая ВМ получает своё ядро, может запускать Docker и менять параметры ядра. Для production-серверов и Docker выбирайте KVM.

Производительность KVM

С virtio-драйверами производительность достигает 90–98% от bare-metal. CPU pinning снижает NUMA-накладные расходы для latency-sensitive приложений. Оверкоммит позволяет выделить ВМ больше ресурсов, чем есть физически.

Инструменты управления KVM

virsh — CLI для libvirt. virt-manager — GUI для рабочих станций. Proxmox VE — полноценная веб-панель с HA и кластером. oVirt — enterprise-платформа на базе KVM. Для хостинг-провайдеров: SolusVM или собственный API поверх libvirt.

Другие термины

KVM — что это, определение и как работает | Справочник — hostprofi.ru