Programování

Novm zpochybňuje definici toho, co je kontejner a co je virtuální počítač

Ve chvíli, kdy jste si mysleli, že všechny možnosti hypervisorů, kontejnerů a virtuálních počítačů byly vyčerpány, přichází další uchazeč o míchání čerstvých ingrediencí do hrnce.

Novm - vyráběný pod záštitou Google, i když podle popisu GitHub není oficiálním produktem Google - je hypervisor typu 2 (podobný VMware Workstation, spíše než VMware ESX) napsaný v Go, využívající Linux KVM a zaměřený na spuštěné aplikace spíše než celé systémy.

Zajímavé je, že podle stránky projektu „vystavuje zařízení souborového systému jako primární mechanismus pro spouštění hostů“. Místo definování obrazu disku, který se má použít s virtuálním počítačem, si uživatel všimne, jaké adresáře mají být viditelné pro Novm - a seznam lze změnit v reálném čase, což umožňuje přidávání nebo odebírání adresářů za běhu systému běží.

Tvůrci společnosti Novm - zejména Adin Scannell, vývojář systémového softwaru ve společnosti Google - poukazují na několik výhod oproti kontejnerům pro jejich systém, kromě toho, že je méně problematické spravovat instance disků. Na rozdíl od systému založeného na kontejnerech může Novm na hostiteli spouštět libovolné jádro, které umí zavést, takže host a hostitel mohou spouštět zcela odlišné verze Linuxu s různými mixy modulů. Tento model má také lepší zabezpečení než kontejnery, protože jediným vystaveným rozhraním je rozhraní x86 ABI a samotný hypervisor. („Kontejnery pravděpodobněji trpí bezpečnostními dírami, protože host má přístup k celému rozhraní volání systému systému jádra,“ vysvětlují tvůrci.)

V prezentaci LinuxCon doručené loni v srpnu popsal Scannell (také tvůrce nástroje Huptime) některá z toho, co vnímal jako omezení kontejnerů. Jsou silně závislí na jádře hostitele, což ztěžuje zabezpečení, než by se mohlo zdát, a vytvářejí problémy se stavem sdíleného jádra, který je „složitý a těžko izolovatelný“, protože „migrace, pozastavení a obnovení jsou mnohem těžší. " Spíše než se snažit, aby se kontejnery více podobaly virtuálním počítačům, jeho myšlenkou u společnosti Novm bylo pokusit se vytvořit virtuální počítač jako kontejner, který má nasazení ve stylu Dockeru, může mapovat v adresářích z jiných souborových systémů pouze pomocí příkazu a může řešit některé z těchto problémů.

Současné nevýhody přístupu společnosti Novm jsou trojí: rychlost (pracovní zátěž náročná na I / O přichází s mnoha upozorněními), podpora velmi malého počtu hardwarových zařízení a podpora v současné době pouze pro linuxová jádra. Druhé omezení omezuje společnost Novm na spouštění aplikací s moderním zásobníkem. Jak uvedl Scannell: „Nemůžete přenést svůj nedotknutelný starodávný IT systém na Novm.“

Jednou analogií exploze produktů, které zkoumají spektrum možností mezi hypervizory, virtuálními počítači a kontejnery, je způsob, jakým smartphony prošly podobnou explozí ve formálních faktorech, od konvenčního telefonu až po „phablet“, který se ukázal jako překvapivý úspěch. Každý tvarový faktor uspokojil různé potřeby pro různé zákazníky, i když tyto potřeby nebyly viditelné pro ostatní zákazníky - ani pro jiné výrobce smartphonů.

Stejným způsobem jsou experimenty, jako jsou tyto, které zkoumají přemístění dělící čáry mezi VM a kontejnerem, určeny k poškrábání svědění, které IT lidé možná neví. Je zřejmé, že Docker dokázal uspokojit jedno velké svědění, ale je zcela možné, že projekty jako Novm mohou najít a uspokojit další potřeby, které nebyly vyjádřeny.