Az Intel bejelentette a "Cloud Hypervisor 0.3" nevű, nyílt forráskódú virtuálisgép-monitorának új verziójának kiadását, amely KVM-en fut. A projekt kizárólag modern felhőalapú munkafolyamatok futtatására összpontosít, korlátozott számú hardverarchitektúra és platform mellett.
A felhőalapú munkaterhelések jellemzően az ügyfelek által egy felhőszolgáltató környezetében futtatott feladatokra utalnak. A hipervizor a Rust-VMM közös projekt komponensein alapul, amelyben az Intel mellett az Alibaba, az Amazon, a Google és a Red Hat is részt vesz.
A Rust-VMM Rust nyelven íródott, és lehetővé teszi kifejezetten adott feladatokhoz tervezett hipervizorok létrehozását . A Cloud Hypervisor egy ilyen hipervizor, amely magas szintű virtuálisgép-monitort (VMM) biztosít, és a felhőalapú számítástechnika kihívásainak kielégítésére van optimalizálva.
A Cloud Hypervisor a modern Linux disztribúciók elindítására összpontosít Paravirtio készülékek használatával.
Főbb jellemzők: nagy válaszidő, alacsony memóriafogyasztás, nagy teljesítmény, egyszerűsített konfiguráció és csökkentett támadási vektorok.
Az emulációs támogatás minimalizált, a hangsúly a paravirtualizáción van. Jelenleg csak az x86_64 rendszerek támogatottak, de a tervek szerint az AArch64 támogatása is szerepel. A vendégrendszerek közül jelenleg csak a 64 bites Linux buildek támogatottak. A CPU, a memória, a PCI és az NVDIMM konfigurálása a build szakaszában történik, és a virtuális gépek szerverek között is migrálhatók.
A projekt kódja Apache 2.0 licenc alatt érhető el.
A Cloud Hypervisor 0.3 fő új funkciói
A Cloud Hypervisor 0.3 új verziója jelentősen kiküszöböli a paravirtualizált I/O-t az egyes folyamatokban . A blokkeszközökkel való interakcióhoz hozzáadták a vhost-user-blk backendek használatának lehetőségét.
A módosítás lehetővé teszi a vhost-user modulon alapuló blokkeszközök, például az SPDK csatlakoztatását a Cloud Hypervisorhoz paravirtualizált tárolási háttérrendszerként.
A hálózati műveletek eltávolításának támogatása a vhost-user-net backendekben , amely az előző verzióban megjelent, kibővült egy új backenddel, amely a TAP virtuális hálózati vezérlőn alapul. Ez a backend Rust nyelven íródott, és a Cloud Hypervisor mostantól elsődleges paravirtualizált hálózati architektúraként használja.
A gazdagép és a vendégrendszer közötti kommunikáció hatékonyságának és biztonságának növelése érdekében egy hibrid socket implementációt javasolnak AF_VSOCK címzéssel (virtuális hálózati socketek), amely a virtio-n keresztül működik.
A megvalósítás az Amazon által fejlesztett Firecracker projekt tapasztalatain alapul. A VSOCK lehetővé teszi a szabványos POSIX sockets API használatát a vendégrendszer és a hosztoldal alkalmazásai közötti interakcióhoz, megkönnyítve a szokásos hálózati programok adaptálását ehhez az interakcióhoz, valamint több kliensprogram és egy szerveralkalmazás közötti interakció megvalósítását.
Egy másik figyelemre méltó változás a HTTP protokollt használó felügyeleti API kezdeti támogatásának bevezetése . A jövőben ez az API lehetővé teszi az aszinkron műveleteket vendégrendszereken, például az erőforrások gyorscsatlakozását és a környezetek migrálását.
Kiemelendő továbbá egy réteg hozzáadása a virtio MMIO (virtio memory mapped) alapú szállítási megvalósítással, amely minimalista vendégrendszerek létrehozására használható, amelyek nem igénylik a PCI busz emulációt.
A beágyazott vendégkiadás támogatásának kiterjesztésére irányuló kezdeményezés részeként a Cloud Hypervisor hozzáadta a paravirtualizált IOMMU-eszközök továbbítását a virtio-n keresztül, ami növelheti a beágyazott és közvetlen eszköz-továbbítás biztonságát.
Végül, a bejelentésben kiemelt egyéb új funkciók között szerepel az Ubuntu 19.10 támogatása, valamint a vendégrendszerek 64 GB-nál több RAM-mal történő futtatásának lehetősége.