Red Hat Enterprise Virtualization Technologie KVM Milan Zelenka, RHCE Enlogit s.r.o.
Část 1 Virtualizace obecně
Virtualizace Systém umožňující využívat jeden zdroj pro více systémů Hardware jako zdroj výkonu (Hypervisor) Jednotlivé servery jako virtuální instance + Efektivnější využití kapacit serverů + Dynamické přidělování výkonu + Škálovatelnost
Proč nemohu virtualizovat? Vysoké nároky na I/O operace Databázové systémy Vysoké nároky na latenci systémů Zvýšená odezva způsobená virtualizační vrstvou Limitované možnosti škálování virtuálního prostředí Omezená škálovatelnost virtuálního prostředí např. max 4 CPU, atd...
Proč nemohu virtualizovat? Vysoké nároky na I/O operace Databázové systémy Vysoké nároky na latenci systémů Zvýšená odezva způsobená virtualizační vrstvou Limitované možnosti škálování virtuálního prostředí Omezená škálovatelnost virtuálního prostředí např. max 4 CPU, atd... Tato mínění vznikla na základě zkušeností s první generací x86 virtualizace KVM dokáže poskytnout až 98% bare metal výkonu
Generace x86 virtualizace 1. Generace Softwarová emulace HW 2. Generace Para-virtualizace 3. Generace Hardwarová virtualizace VM VM VM Binary translation Domain 0 VM VM VM VM VM Hypervisor Hypervisor Linux KVM x86 x86 x86 VT PV Driver PV Kernel
Část 2 Hypervisor KVM
Kernel-based Virtual Machine Dělá z Linuxu Hypervisora nač vyvíjet jádro, když lze použít stabilní Linux Využívá hardwarové podpory virtualizace (CPU) 3. generace Intel VT-x / AMD-V Již není třeba speciální kernel hostů a hostitelů Kernel modul /dev/kvm 2006 - součást Linux mainstream kernelu
Vlastnosti KVM Běžné vlastnosti hypervisoru Virtualizace platforem i386 a x64 Hot-plug, PCI Pass-through Vysoká škálovatelnost: Pokročilé vlastnosti KVM Hostitel: 96 cores, 1 TB RAM, Host: 16 vcpu, 256 GB RAM Kernel Same-Page Merging (KSM) Modulární paravirtualizace - VirtIO Thin Provisioning Živá migrace Vlastnosti získané díky spojení s Linuxem SELinux Power management LVM, Multipath, bonding,...
Kernel Same-Page Merging Hledá stejné paměťové stránky virtuálních systémů Fyzicky uchovává pouze jednu read-only kopii V připadě změny vytvoří read-write kopii na vyžádání VM U serverů běžně kolem 150% over-commit
Thin provisioning Alokuje pouze tolik prostoru kolik skutečně využije Lepší využití diskové kapacity Snižuje náklady na storage Možné využití na uložištích NFS, iscsi a Fiber Channel
Modulární paravirtualizace Emulace hardware v UserSpace přináší velký overhead Paravirtualizované ovladače Bloková zařízení Síťové rozhraní Projekt VirtIO Framework a sada ovladačů Použitelné pro jakýkoliv hypervisor Ovladače pro Linux součástí upstream kernelu Ke stažení certifikované ovladače i pro MS Windows Vysoký výkon, nízký overhead
Podpora hostovaných systémů KVM podporuje mnoho x86 operačních systému jako host Linux, Windows, BSD, Darwin, GNU/Hurd, MS-DOS, Plan 9, etc Red Hat součástí programu Microsoft Server Virtualization Validation Program (SVVP) Certifikace pro RHEL 5.4 and RHEV-H WHQL certifikace VirtIO ovladačů
Bezpečnost Spojení KVM + SELinux Vnější ochrana a izolace virtuálních strojů Projekt svirt Sub-projekt komunity SELinux Hardened hypervisor Víceúrovňová ochrana Izolace hostů
Část 3 Benchmarks
Oracle OLTP Workload Oracle 10g RHEL 5.3 guest RHEL 5.4 host Intel Xeon W5580 NEHALEM 90-93% výkonu fyzického stroje
Microsoft Exchange Server Loadgen workload Microsoft Exchange Server 2007 Microsoft Windows Server 2008 R2 RHEL 5.4 host Intel Xeon W5540 NEHALEM 16 000 uživatelů Scale-out přináší nižší latenci
SAP SAP Linuxlab Certification Suite (SLCS) 2.3 SAP ECC 6 MAXDB 7.6 RHEL 5.4 guest RHEL 5.4 host Intel Xeon W5570 NEHALEM až 95% výkonu fyzického stroje
LAMP LAMP Apps: Apache PHP MySQL RHEL 5.4 guest RHEL 5.4 host Intel Xeon W5580 NEHALEM až 139% výkonu fyzického stroje
KONEC Milan Zelenka, RHCE