Kernel-based Virtual Machine
Тип | платформа віртуалізації |
---|---|
Розробник | Open Virtualization Alliance (OVA) |
Стабільний випуск | 1.2.0 (5 вересня 2012 ) |
Версії | 1.2 |
Операційна система | Unix-like |
Мова програмування | C |
Ліцензія | GNU General Public License чи GNU Lesser General Public License |
Репозиторій | git.kernel.org/pub/scm/virt/kvm/kvm.git |
Вебсайт | www.linux-kvm.org (неофіційний) |
Kernel-based Virtual Machine (KVM) — програмне рішення, що забезпечує віртуалізацію в середовищі Linux на платформі x86 , яка підтримує апаратну віртуалізацію на базі Intel VT (Virtualization Technology) або AMD SVM (Secure Virtual Machine).
Програмне забезпечення KVM було створено фірмою Qumranet, яка була куплена RedHat за 107 мільйонів доларів 4 вересня 2008 року.[1] Компонент ядра, необхідний для роботи KVM, включений в основну гілку Linux починаючи з версії 2.6.20 (лютий 2007).[2]
На KVM заснована Red Hat Enterprise Virtualization (RHEV), промислова платформа для організації управління інфраструктурою віртуалізації від компанії Red Hat.
KVM вимагає наявності x86-сумісного процесора з підтримкою однієї з технологій апаратної віртуалізації - Intel VT або AMD SVM. KVM в змозі запускати як гостьові ОС GNU/Linux (32-бітові та 64-бітові), Windows (32-бітові та 64-бітові) та інші системи. [4]
Програмне забезпечення KVM складається з завантажувального модуля ядра (званого kvm.ko), що надає базовий сервіс віртуалізації, процесорно-специфічного завантажувального модуля kvm-amd.ko або kvm-intel.ko, і компонентів для режиму користувача (модифікованого QEMU). Всі компоненти KVM є програмним забезпеченням з відкритим сирцевим кодом.
Сам по собі KVM не виконує емуляції. Замість цього програма, що працює в просторі користувача, використовує інтерфейс /dev/kvm для налаштування адресного простору гостя віртуальної машини, через нього ж емулює пристрої вводу-виводу і відеоадаптер.
KVM дозволяє віртуальним машинам використовувати немодифіковані образи дисків QEMU, VMware та інших, що містять операційні системи. Кожна віртуальна машина має своє власне віртуальне апаратне забезпечення: мережеві карти, диск, відеокарту тощо.
KVM був також портований на FreeBSD як модуль ядра..[3]
- virt-manager: створення, редагування, запуск і зупинка віртуальних машин, заснованих на KVM
- virsh: Інтерфейс командного рядка
- ConVirt: створення, редагування, запуск і зупинка віртуальних машин, заснованих на KVM, як гарячу, так і холодну міграцію з інших VM хостів.
- Proxmox Virtual Environment. Вільна віртуалізація, заснована на KVM і OpenVZ — установка на урізаний дистрибутив Linux, управління через GUI і можливість отримання комерційної підтримки
- KVM модуль ядра: GPLv2
- KVM модуль користувацького оточення: LGPL v2
- QEMU бібліотека віртуального процесора (libqemu.a) і емулятор системи QEMU PC: LGPL
- Емулятор режиму користувача Linux QEMU: GPL
- Файли BIOS (bios.bin, vgabios.bin і vgabios-cirrus.bin): LGPL v2 або пізніша
KVM використовує модифікований QEMU як фронтенд. Ведеться робота з оптимізації використання можливостей апаратної віртуалізації, закладених в сучасних процесорах Intel і AMD. Продуктивність KVM порівнювалася з продуктивністю Xen, що працює в режимі апаратної віртуалізації (Не паравіртуалізації), і за певних видах навантажень KVM показував кращу продуктивність (але не в більшості випадків). [5]
Ведеться робота з включення модифікацій, необхідних для роботи з KVM, в основну гілку QEMU.
- ↑ blkdog (4 вересня 2008). Red Hat приобрела компанию Qumranet, разрабатывающую систему виртуализации KVM. Maxim Chirkov. Архів оригіналу за 21 лютого 2012. Процитовано 5 вересня 2008.
- ↑ Linux: 2.6.20 Kernel Released. KernelTrap. Архів оригіналу за 21 лютого 2012. Процитовано 13 червня 2013.
- ↑ FreeBSD Quarterly Status Report: Porting Linux KVM to FreeBSD. Архів оригіналу за 21-02-2012. Процитовано 13-06-2013.
- Офіційний сайт
- Wikibook QEMU & KVM
- First benchmarks of KVM
- "News, Blogs and Resources on the Linux (KVM) Kernel-Based Virtual Machine"
- Available KVM-Implementation from Collax [Архівовано 9 березня 2012 у Wayback Machine.]
- UnifiedSessionsManager – An OpenSource based Service and Sessions Manager for QEMU/KVM
- oVirt — система управління віртуалізацією
- Lguest — мінімалістичний гіпервізор Linux