KVM (Kernel-based Virtual Machine)

KVM je open-source virtualizační technologie integrovaná přímo do jádra Linuxu (od verze 2.6.20). Umožňuje jádru Linuxu fungovat jako Hypervisor typu 1 (bare-metal).

Díky KVM může každý uživatel spustit více izolovaných virtuálních strojů (VM) s operačními systémy Linux nebo Windows, přičemž každý stroj má k dispozici soukromý virtualizovaný hardware (síťovou kartu, disk, grafický adaptér atd.).

Architektura KVM

KVM v podstatě přeměňuje Linuxový kernel na hypervisor. K fungování vyžaduje procesor s podporou hardwarové virtualizace (Intel VT-x nebo AMD-V).

Klíčové komponenty:

KVM Kernel Module: Jádro samotné, které spravuje přístup k procesoru a paměti.

QEMU (Quick Emulator): Userspace nástroj, který emuluje hardware (disky, USB, síť) pro virtuální stroj. KVM a QEMU téměř vždy spolupracují (často označováno jako KVM/QEMU).

Libvirt: Knihovna a API pro správu virtuálních strojů. Nabízí nástroje jako virsh (příkazová řádka) nebo Virt-Manager (grafické rozhraní).

Hlavní vlastnosti

Bezpečnost: KVM využívá kombinaci SELinuxu a sVirt k izolaci virtuálních strojů. Každý virtuální stroj běží jako standardní Linuxový proces, na který se vztahují přísná bezpečnostní pravidla.

Správa paměti: Podporuje funkce jako KSM (Kernel Same-page Merging), která sdílí stejné paměťové stránky mezi různými VM, čímž šetří RAM.

Live Migration: Umožňuje přesunout běžící virtuální stroj z jednoho fyzického serveru na druhý bez přerušení jeho provozu.

Škálovatelnost: KVM dokáže adresovat veškerý hardware, který podporuje samotný Linux, což znamená podporu pro extrémně výkonné servery s tisíci jádry CPU a terabajty RAM.

Srovnání: KVM vs. VMware ESXi

Vlastnost	KVM	VMware ESXi
Licence	Open-source (GPL)	Komerční (Proprietární)
Cena	Zdarma (součást Linuxu)	Placené (licence na CPU/jádro)
Integrace	Součást jádra OS	Samostatný microkernel
Ekosystém	Velmi silný v cloudu (OpenStack)	Standard pro firemní on-premise sféru

Proč je KVM populární v cloudu?

Většina poskytovatelů IaaS volí KVM, protože:

1. **Nulové licenční poplatky:** To umožňuje nabízet levnější virtuální servery (VPS).
2. **Výkon:** Protože je kód přímo v jádře, režie virtualizace je minimální.
3. **Customizace:** Programátoři mohou upravit kód hypervisoru přesně pro své potřeby.

Správa KVM

Ačkoliv lze KVM ovládat čistě přes terminál, existují pokročilé nástroje pro orchestraci:

Virt-Manager: Jednoduché GUI pro správu VM na lokálním PC.

Cockpit: Webové rozhraní pro správu Linuxového serveru včetně KVM.

OpenStack / Proxmox: Komplexní platformy pro budování celých cloudových datacenter postavených na KVM.

— Související termíny: Hypervisor, IaaS, Linux, QEMU, Virtualizace.