Zbrusu nový hypervizor v OpenBSD napsaný na zelené louce

Petr Topiarz 21. 12. 2015

Je to konečně tady – nativní OpenBSD hypervizor je na světě. Virtuální stroj, který je (a hlavně se má stát) něčím mimořádným. Je totiž napsaný úplně od nuly a nabídne podporu i pro systémy staré, starší i nejstarší. Co nepůjde spustit přímo na „holém železe“, se může v budoucnu nastěhovat do vmm.

V dnešní době si bez virtualizace většina firem, ale i velká část běžných uživatelů, nedokáže představit život. Virtualizuje se síťové připojení, diskové systémy i celé stroje, a přesto v podstatě do letošních Vánoc byli uživatelé OpenBSD ponecháni bez efektivního virtuálního motoru. Jediné, co spolehlivě funguje, je Qemu, ovšem posledních cca 5 let je bez akcelerátoru, protože vývoj kqemu skončil a KVM je licencí GNU GPL a navíc velmi výrazně vázán na linuxový kernel (i když vývojáři Solarisu už KVM portovali).

To je opravdu s podivem, když systémový bratříček NetBSD (nebo spíše otec?), jehož kernel je velmi blízký OpenBSD, už před dlouhými roky implementoval Xen. Xen také dosud na NetBSD Xen spolehlivě funguje a to nejen jako paravirtualizační systém, ale i s HVM, tzn. plnou virtualizací, která dovolí běh i uzavřeným systémům jako Windows nebo OS X. Osobně na NetBSD několik takových Xen serverů provozuji a stabilitu si musím jen chválit.

Vývoj začal letos

To všechno se ale mění. Na hackatonu v Brisbane na jaře roku 2015 se vývojář Mike Larkin rozpovídal o konceptu virtuálního stroje, který měl už dlouho v hlavě. Ostatní vývojáře tím tak zaujal, že mu dokonce odsouhlasili financovat částečně vývoj ze zdrojů OpenBSD Foundation. Nadace získává peníze částečně prodejem instalačních CD s OpenBSD a částí z darů příznivců tohoto projektu. Tím byl vývoj odstartován.

Paradoxní na tom všem je, že vedení OpenBSD v čele s bojovným, vzteklým a velmi nekorektním, ale zároveň obdivuhodně schopným podivínem Theo De Raadtem, několikrát různé koncepty virtualizace (především pak právě Xen) odmítlo. Virtualizace prý podkopává bezpečnost, což bylo zdůvodněno ze všech možných pohledů na věc. Rýpaví kritici to také dnes nezapomněli Theovi a jeho hochům pěkně nahlas připomenout. Když si přečtete odpovědi týmu okolo Thea, máte dojem, že vystudovali sofistiku, práva i teologii. Musíte se usmívat, jak obratně vysvětlují, že to tenkrát tak a tak nemysleli a vlastně konzistentně tvrdí pořád to samé, akorát tenkrát hypervizor nechtěli a nyní ho chtějí.

Co tedy přesně nový hypervizor přináší? Především, stejně jako různý jiný zajímavý software z dílny vývojářů okolo OpenBSD, například relayd (httpd), opensmtpd, nebo libressl, má údajně vynikat jednoduchostí, čistotou kódu a přenositelností, navíc má podporovat i starší hardware. Když se podíváte na software, který okolo OpenBSD vzniká, musíte uznat, že něco na jejich tvrzení je. Ačkoli mnozí čekali, že dojde k portování B-Hyve z FreeBSD, což by mělo svou logiku, pustil se vývojář Mike Larkin do vývoje vlastního hypervizoru úplně od píky.

Velmi rychlý vývoj

Na blogu undeadly.org, kde OpenBSD prezentuje mnoho ze svých činností, nejdříve prosakovaly nejisté zprávičky a 1. září vyšlo závazné oznámení, že hypervizor se během podzimu skutečně do BSD kódu dostane. Následně v říjnu bylo možno číst, jak daleko se vývojář dostal a co už mu funguje. Dlouho ale odmítal zveřejnit kód. V listopadu 2015 přišel přelom: kód byl commitnut do zdroje OpenBSD-current (což je velmi zhruba něco jako Debian-testing, nebo Mageia cauldron, nebo poslední Fedora beta) a nyní ho mohou všichni zkoušet a začít hlásit chyby a zapojit se do vývoje.

Co už tedy funguje? Žádný kompletní VirtualBox à la BSD to není, ale vývoj je ukrutně rychlý. Na konci listopadu virtuálnímu stroji nazvanému nyní pouze prostě vmm chybělo v podstatě všechno – byl to jen kernel. Autor říkal přibližně toto: Nabootuje kernel a načte se souborový systém – teď můžete všichni začít testovat a očekávejte, že to bude padat…

Binárku spustíte na OpenBSD i386 nebo amd64, a ty samé architektury systému OpenBSD stroj dokáže virtualizovat (podpora i386 je ve chvíli psaní zase dočasně vypnutá). Autor kódu už oznámil, že už po jedné hodině práce rozběhl NetBSD, jehož API je velmi blízké OpenBSD, ale zatím tuto funkcionalitu oficiálně nenabízí. Na začátku prosince oznámil, že už běží X a síť. Zároveň ale z jeho poznámek vyplývá, že má rozpracováno spousty dalších částí, které do vmmctl (ovládací program) hodlá v nejbližší budoucnosti implementovat – zřejmě ale až po stabilizaci.

Jak rychlý je vývoj, si můžete prohlédnout už jen na tomto příkladu:

Tento návod na testování byl uveřejněný na internetu na konci listopadu. Tři týdny na to už si to ale nevyzkoušíte:

  • vmmctl se nově jmenuje jen vmctl
  • když chcete postupovat dle návodu, dočtete se, že:
# vmctl -e
unknown option "-e"

Když srovnáte tento obrázek s předchozím, vidíte evidentní pokrok:

Co bude dál? Otec projektu na svém blogu nastínil hrubě své nejbližší cíle a vize asi takto: podpora přímé hardwarové virtualizace bude pro primární použití, ale ne podmínkou Vysvětlil také, jak budou ostatní počítače bez přímé virtualizace emulovat potřebné prvky přes shadow RAM. Další věcí, kterou Larkin letmo nastínil je propojení vmm s Qemu, možná trochu podobně jako to dělá KVM. Larkin toho má v plánu určitě víc, ale ve svých vyjádřeních se drží spíše při zemi.

widgety

Jaký to má smysl?

Přemýšlivý čtenář si nemůže nepoložit otázku, jaký všechno to velké úsilí má význam – máme přece funkční VMWare, Xen, VirtualBox, qemu+KVM na Linuxu, Solarisu, FreeBSD a podobně? Jeden z cílů, který si vývojáři dali, když se rozhodli projekt podpořit z financí získaných prodejem instalačních CD, je podpora legacy hardware. I když nemáte zrovna nejmodernější poslední stroj s čtyřjádrovým procesorem i7, měl by vám vmm z dílny OpenBSD svižně chodit.

Kromě toho, každý tvůrce přináší se svým virtuálním strojem nové a zajímavé prvky, které si časem, pokud se osvědčí, osvojují i ostatní. A je zřejmé, že při masovém použití Xenu (hlavně v jeho komerční formě CITRIX) a VMWare, a nemalém podílu Virtualboxu (asi hlavně v uživatelské sféře) je virtuální stroj, který někdo napíše od píky úplně jinak, vítanou šancí pro bezpečnost. Je snadné napadat jeden nebo dva hlavní systémy, ale už není tak snadné psát malware napadající velký počet hypervizorů. Proto si dokážu představit, že firmy, které akcentují bezpečnost, budou s očekáváním pokukovat pod ruce vývojářům z OpenBSD. A to nemluvím o těch, kdo (jako já) rádi zkoušejí a testují zajímavý open source.

Zdroje

Našli jste v článku chybu?
Podnikatel.cz: Byla finanční manažerka, teď cvičí jógu

Byla finanční manažerka, teď cvičí jógu

Lupa.cz: Jak se prodává firma za miliardu?

Jak se prodává firma za miliardu?

Podnikatel.cz: V říjnu se rozšíří režim reverse-charge

V říjnu se rozšíří režim reverse-charge

Podnikatel.cz: Letáky? Lidi zuří, ale ony stále fungují

Letáky? Lidi zuří, ale ony stále fungují

Vitalia.cz: 5 chyb, které děláme při skladování potravin

5 chyb, které děláme při skladování potravin

Vitalia.cz: Jsou vegani a vyrábějí nemléko

Jsou vegani a vyrábějí nemléko

Podnikatel.cz: Instalatér, malíř a elektrikář. "Vymřou"?

Instalatér, malíř a elektrikář. "Vymřou"?

Lupa.cz: Jak levné procesory změnily svět?

Jak levné procesory změnily svět?

DigiZone.cz: Mordparta: trochu podchlazený 87. revír

Mordparta: trochu podchlazený 87. revír

DigiZone.cz: Funbox 4K v DVB-T2 má ostrý provoz

Funbox 4K v DVB-T2 má ostrý provoz

Podnikatel.cz: Babišovi se nedá věřit, stěžovali si hospodští

Babišovi se nedá věřit, stěžovali si hospodští

DigiZone.cz: Digi Slovakia zařazuje stanice SPI

Digi Slovakia zařazuje stanice SPI

DigiZone.cz: Wimbledon na Nova Sport až do 2019

Wimbledon na Nova Sport až do 2019

Vitalia.cz: Fyzioterapeutka: Chůze naboso? Rozhodně ano!

Fyzioterapeutka: Chůze naboso? Rozhodně ano!

Vitalia.cz: dTest odhalil ten nejlepší kečup

dTest odhalil ten nejlepší kečup

Lupa.cz: Další Češi si nechali vložit do těla čip

Další Češi si nechali vložit do těla čip

Vitalia.cz: Tohle jsou nejlepší česká piva podle odborníků

Tohle jsou nejlepší česká piva podle odborníků

Podnikatel.cz: Znáte už 5 novinek k #EET

Znáte už 5 novinek k #EET

DigiZone.cz: Parlamentní listy: kde končí PR...

Parlamentní listy: kde končí PR...

Podnikatel.cz: Takhle se prodávají mražené potraviny

Takhle se prodávají mražené potraviny