История KVM (аббревиатура от Kernel-based Virtual Machine) насчитывает всего немногим более 3 лет, однако данное программное решение, при помощи которого обеспечивается виртуализация в среде Linux, обрело немало сторонников.
В частности, в отличие от многих других, проект разработки KVM не был классическим Open Source — его спонсировала компания Qumranet, которая в последствии была куплена компанией RedHat. Тогда говорили, что это поможет создать действительно эффективный продукт.
По своей архитектуре, KVM состоит из двух компонентов:
- драйвера, который отвечает за поддержку аппаратных средств виртуализации. Данный драйвер в качестве модуля подключается к ядру;
- программы пользовательского интерфейса для запуска устройств ввода/вывода и BIOS. Он является немного модифицированной версией программного обеспечения QEMU.
Установка KVM довольна проста для пользователей ОС Linux. Для того, чтобы загрузить модуль в ядро, применяется команда /sbin/modprobe с аргументом kvm-amd (если поддерживается аппаратная виртуализация на базе AMD-V) и kvm-intel (для Intel VT). В тех системах, где нет AMD-V или Intel VT, виртуализация выполняется с помощью «пустого» QEMU, который обладает довольно маленькой скоростью работы.
На данный момент представлены такие графические утилиты управления: ConVirt (используется для создания, редактирования, старта и остановки виртуальных машин, которые основаны на KVM); Virtual Machine Manager (аналогично); Proxmox Virtual Environment (виртуализация, которая основана на базе KVM и OpenVZ)