Русская Википедия:KVM

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Шаблон:Другие значения Шаблон:Обновить Шаблон:Карточка программы

KVM (Kernel-based Virtual Machine) — программное решение, обеспечивающее виртуализацию в среде Linux на платформе x86, которая поддерживает аппаратную виртуализацию на базе Intel VT (Virtualization Technology) либо AMD SVM (Secure Virtual Machine).

Программное обеспечение KVM состоит из загружаемого модуля ядра (называемого kvm.ko), предоставляющего базовый сервис виртуализации, процессорно-специфического загружаемого модуля kvm-amd.ko либо kvm-intel.ko, и компонентов пользовательского режима (модифицированного QEMU). Все компоненты программного обеспечения KVM открыты. Компонент ядра, необходимый для работы KVM, включён в основную ветку ядра Linux начиная с версии 2.6.20 (февраль 2007 года)[1]. KVM был также портирован на FreeBSD как модуль ядра[2]. Ведётся работа по включению модификаций, необходимых для работы с KVM, в основную ветку QEMU.

Сам по себе KVM не выполняет эмуляции. Вместо этого программа, работающая в пространстве пользователя, использует интерфейс /dev/kvm для настройки адресного пространства гостя виртуальной машины, через него же эмулирует устройства ввода-вывода и видеоадаптер.

KVM позволяет виртуальным машинам использовать немодифицированные образы дисков QEMU, VMware и других, содержащие операционные системы. Каждая виртуальная машина имеет своё собственное виртуальное аппаратное обеспечение: сетевые карты, диск, видеокарту и другие устройства.

Программное обеспечение KVM было создано, разрабатывается и поддерживается фирмой Qumranet, которая была куплена Red Hat за $107 млн 4 сентября 2008 года.[3]. После сделки KVM (наряду с системой управления виртуализацией oVirt) вошла в состав платформы виртуализации Шаблон:Iw.

Лицензия

  • KVM-модуль ядра: GPL v2.
  • KVM-модуль пользовательского окружения: LGPL v2.
  • QEMU-библиотека виртуального процессора (libqemu.a) и эмулятор системы QEMU PC: LGPL.
  • Эмулятор пользовательского режима Linux QEMU: GPL.
  • Файлы BIOS (bios.bin, vgabios.bin и vgabios-cirrus.bin): SeaBIOS (LGPL v2 или более поздняя).

Системные требования

KVM требует наличия x86-совместимого процессора с поддержкой одной из технологий аппаратной виртуализации — Intel VT либо AMD SVM. На данный моментШаблон:Уточнить KVM в состоянии запускать в качестве гостевых операционных систем 32-битные и 64-битные системы на базе ядра Linux, Windows и другие системыШаблон:Уточнить[4].

Графические утилиты управления

Файл:Libvirt support.svg
Kernel-based Virtual Machine и libvirt.
  • Virtual Machine Manager: создание, редактирование, запуск и остановка виртуальных машин, основанных на KVM
  • ConVirt: создание, редактирование, запуск и остановка виртуальных машин, основанных на KVM, как горячую, так и холодную миграцию с других VM хостов.
  • Proxmox Virtual Environment. Свободная виртуализация, основанная на KVM и OpenVZ — установка на урезанный дистрибутив Linux, управление через GUI и возможность получения коммерческой поддержки
  • AQEMU: создание, редактирование, запуск, остановка, сохранение мгновенных снимков виртуальных машин, основанных на KVM и QEMU. Программа создана русскоязычным разработчиком с использованием Qt4, позволяет задать все параметры для KVM/QEMU. Хостится на SourceForge.
  • GKVM: для рабочей среды GNOME. Создание, редактирование, запуск, остановка, сохранение мгновенных снимков виртуальных машин KVM. Хостится на SourceForge.
  • QtEmu: графическая оболочка для QEMU и KVM, написана на Qt4. Интерфейс на десяти языках. Хостится на SourceForge.

Текущие разработки

KVM использует QEMU в качестве фронтенда и для эмуляции некоторых устройств[5]. Ведётся работа по оптимизации использования возможностей аппаратной виртуализации, заложенных в современных процессорах Intel и AMD. Производительность KVM сравнивалась с производительностью Xen, работающего в режиме аппаратной виртуализации (не паравиртуализации), и при определённых видах нагрузок KVM показывал лучшую производительность (но не в большинстве случаев)[6].

См. также

Примечания

Шаблон:Примечания

Ссылки

Шаблон:Rq Шаблон:Emulator

  1. Шаблон:Cite web
  2. Шаблон:Cite web
  3. Шаблон:Cite web
  4. Main Page — KVM Шаблон:Webarchive
  5. http://www.cs.hs-rm.de/~linn/fachsem0910/hirt/KVM.pdf Шаблон:Wayback "To provide hardware like hard disks, cd drives or network cards to the VMs, KVM uses a highly modified QEMU .. KVM uses QEMU as such a backend which handles I/O operations directly"
  6. Phoronix Linux KVM Virtualization Performance Шаблон:Wayback, 8 January 2007