A Microsoft nyilvánosságra hozta az OpenVMM hipervizor és az OpenHCL para-virtualizációs platform forráskódját.

A Microsoft bejelentette az OpenHCL para-virtualizáló réteg és az OpenVMM virtuális gép monitor forráskódjának megnyitását, amelyet kifejezetten az OpenHCL működésének elősegítésére fejlesztenek. Az OpenVMM és az OpenHCL kódja Rust nyelven íródott, és MIT licenc alatt terjesztik. Az OpenVMM második szintű hipervizor, amely az operációs rendszer kernelével egy védett szinten működik, hasonlóan olyan termékekhez, mint a VirtualBox és a VMware Workstation. Támogatja a működést Linux (x86_64), Windows (x86_64, Aarch64) és macOS (x86_64, Aarch64) alapú gazdarendszerek felett, a megadott operációs rendszerek által biztosított KVM, SHV (Microsoft Hypervisor), WHP (Windows Hypervisor Platform) és Hypervisor.framework virtualizációs API-k segítségével.

Az OpenVMM által támogatott lehetőségek közé tartozik:

  • UEFI és BIOS üzemmódok betöltése, Linux kernel közvetlen betöltése;
  • Virtio alapú para-virtualizáció támogatása (virtio-fs, virtio-9p, virtio-net, virtio-pmem);
  • VMBus alapú para-virtualizáció támogatása (storvsp, netvsp, vpci, framebuffer);
  • vTPM, NVMe, UART, i440BX + PIIX4, IDE HDD, PCI és VGA emuláció;
  • Háttérszolgáltatások grafika, bemeneti eszközök, konzol, tárolás és hálózati hozzáférés átvezetésére;
  • Kezelés parancssori felületen, interaktív konzol, gRPC és ttrpc segítségével.

Az OpenHCL-t para-virtualizáló komponensekkel (paravirt) rendelkező környezetként pozicionálják, amely az OpenVMM hipervizor felett működik. A OpenVMM és OpenHCL alapú virtualizációs rendszerek kulcsfontosságú jellemzője, hogy a para-virtualizáló komponensek nem a gazdarendszer oldalán működnek, hanem egy virtuális gépen belül a vendég rendszerrel együtt. A para-virtualizációs réteg elkülönítése a vendég operációs rendszertől az OpenVMM második szintű hipervizorának erejével biztosított. Az OpenHCL ilyen alkalmazás esetén virtuális firmware-ként tekinthető, amely magasabb privilégiumszinten működik, mint a vendég környezetben futó operációs rendszer.

A vendég rendszer és az OpenHCL komponensek közötti elválasztást virtuális bizalmi szintek (VTL, Virtual Trust Level) koncepciójával valósítják meg, amelyekhez szoftveres mechanizmusok és hardveres technológiák is felhasználhatóak, mint például az Intel TDX (Trust Domain Extensions), AMD SEV-SNP (Secure Encrypted Virtualization-Secure Nested Paging) és ARM CCA (Confidential Compute Architecture). Az OpenHCL komponenseinek futtatásához egy minimalista Linux kernelverzió szükséges, amely csak a működéshez minimum szükséges komponenseket tartalmazza, amelyek az OpenVMM működéséhez szükségesek.

A Microsoft nyilvánosságra hozta az OpenVMM hipervizor és az OpenHCL para-virtualizációs platform forráskódját.

Az OpenHCL x86-64 és ARM64 platformokon működik, és támogatja az Intel TDX, AMD SEV-SNP és ARM CCA kiterjesztéseket a további elszigetelés érdekében. Az OpenHCL tartalmaz egy szolgáltatáscsomagot, illesztőprogramokat és emulátorokat, amelyeket a hardverhez való hozzáférés szervezésére, a virtuális eszközök működtetésére a vendég rendszer oldalán, valamint hardvereszközök emulálására alkalmaznak (például emulálható a kriptográfiai kulcsok tárolására szolgáló chip – vTPM).

A vendég rendszer oldalán a hardverhez való hozzáférés átkonvertálásához meglévő, paravirtualizációt támogató illesztőprogramok alkalmazhatók, vagy az eszközök közvetlen hozzárendelése a virtuális géphez is végrehajtható, ami lehetővé teszi a meglévő vendég rendszerek OpenHCL alapú környezetben történő átvitelét anélkül, hogy módosításokat kellene végezni rajtuk. Ezenkívül az OpenHCL diagnosztikai és hibakeresési komponenseket is tartalmaz. virtuális gépekhez, amelyeket titkos számításokat biztosító kiterjesztésekkel hajtanak végre.

Az OpenHCL eltér a már meglévő nyílt COCONUT-SVSM (Secure VM Service Module) projekttől, amely szolgáltatásokat és emulált eszközöket biztosít a vendég rendszerekhez, amelyek titkos számításokban működnek. virtuális gépekben (CVM, Confidential Virtual Machine), mivel az OpenHCL lehetővé teszi a standard interfészek használatát a vendég rendszerekben, míg a COCONUT-SVSM speciális kapcsolatok létrehozását igényli az SVSM-mel, a vendég rendszer módosításait és külön illesztőprogramok használatát.

Az OpenHCL paravirtualizálójának alkalmazásai közé tartoznak olyan forgatókönyvek, mint a meglévő rendszerek átvitele az Azure Boost hardveres gyorsítók használatára anélkül, hogy módosításokat kellene végezni a vendég rendszer lemezképén; a meglévő vendég rendszerek futtatása virtuális gépekben, amelyek titkos számításokat biztosítanak (például Intel TDX és AMD SEV-SNP alapú); a virtuális gépek megerősített bootolásának megszervezése az UEFI Secure Boot és a vTPM használatával.

Külön megemlítendő, hogy az OpenVMM projekt az OpenHCL használatára összpontosít, és jelenleg nem készült el különálló használatra a vendég rendszerekben a végfelhasználók által végzett munkai bevezetéshez. Az OpenVMM használatát megnehezítő problémák a hagyományos vendéglátó környezetekben, az OpenHCL-hez való kapcsolódás nélkül a következők: a kezelőfelület rossz dokumentáltsága; a háttértárak, hálózatok és grafika teljesítményének megfelelő optimalizálásának hiánya; bizonyos illesztőprogramok (például IDE-lemezek és PS/2 egerek) támogatásának hiánya; az API stabilitásának és funkcionalitásának garanciájának hiánya. Ezzel szemben az OpenVMM és az OpenHCL kapcsolata már elérte az ipari bevezetés szintjét, és a Microsoft az Azure platformon (Azure Boost SKU) alkalmazza, biztosítva ezzel több mint 1,5 millió virtuális gép működését.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster