Microsoft otvoril kód hypervízora OpenVMM a platformy paravirtualizácie OpenHCL

Spoločnosť Microsoft oznámila sprístupnenie zdrojových kódov vrstvy pre zabezpečenie paravirtualizácie OpenHCL a monitora virtuálnych strojov OpenVMM, ktorý je špeciálne vyvíjaný pre organizáciu práce OpenHCL. Kód OpenVMM a OpenHCL je napísaný v jazyku Rust a je šírený pod licenciou MIT. OpenVMM patrí medzi hypervízory druhého stupňa, ktoré pracujú v jednom ochrannom krúžku s jadrom operačného systému, podobne ako produkty ako VirtualBox a VMware Workstation. Podporuje prevádzku na hostiteľských systémoch založených na Linuxe (x86_64), Windows (x86_64, Aarch64) a macOS (x86_64, Aarch64), pričom využíva poskytované API virtualizácie týchto operačných systémov: KVM, SHV (Microsoft Hypervisor), WHP (Windows Hypervisor Platform) a Hypervisor.framework.

Medzi možnosťami, ktoré podporuje OpenVMM, sú:

  • Bootovanie v režimoch UEFI a BIOS, priame bootovanie Linux jadra;
  • Podpora paravirtualizácie na báze ovládačov Virtio (virtio-fs, virtio-9p, virtio-net, virtio-pmem)
  • Podpora paravirtualizácie na báze VMBus (storvsp, netvsp, vpci, framebuffer);
  • Emulácia vTPM, NVMe, UART, čipsetu i440BX + PIIX4, IDE HDD, PCI a VGA;
  • Backendy pre preposielanie grafiky, vstupných zariadení, konzoly, úložiska a sieťového prístupu;
  • Správa cez príkazový riadok, interaktívnu konzolu, gRPC a ttrpc.

OpenHCL je pozicionované ako prostredie s komponentami paravirtualizácie (paravirt), ktoré pracuje nad hypervízorom OpenVMM. Kľúčovou vlastnosťou virtualizačných systémov na báze OpenVMM a OpenHCL je to, že komponenty pre paravirtualizáciu bežia nie na strane hostiteľského systému, ale v jednom virtuálnom stroji s hosťovacím systémom. Izolácia vrstvy paravirtualizácie od hosťovacej operačnej sústavy je pritom zabezpečená silou hypervízora druhého stupňa OpenVMM. OpenHCL môže byť v takomto použití považované za virtuálny firmvér, ktorý beží na vyššej úrovni oprávnení než hosťujúci operačný systém.

Rozdelenie hosťovacej sústavy a komponentov OpenHCL sa realizuje pomocou konceptu virtuálnych úrovní dôvery (VTL, Virtual Trust Level), na realizáciu ktorých môžu byť použité ako softvérové mechanizmy, tak aj hardvérové technológie, ako Intel TDX (Trust Domain Extensions), AMD SEV-SNP (Secure Encrypted Virtualization-Secure Nested Paging) a ARM CCA (Confidential Compute Architecture). Na spustenie komponentov OpenHCL sa využíva zúžená verzia Linux jadra, ktorá obsahuje len minimálne potrebné komponenty potrebné na prevádzku OpenVMM.

Microsoft otvoril kód hypervízora OpenVMM a platformy paravirtualizácie OpenHCL

OpenHCL môže fungovať na platformách x86-64 a ARM64 a podporuje rozšírenia Intel TDX, AMD SEV-SNP a ARM CCA pre dodatočnú izoláciu. OpenHCL obsahuje súbor služieb, ovládačov a emulátorov, ktoré sa používajú na organizáciu prístupu k hardvéru, zabezpečenie prevádzky virtuálnych zariadení na strane hostiteľského systému a emuláciu hardvérových zariadení (napríklad môže emulovať čip na ukladanie kryptografických kľúčov — vTPM).

Na prenos prístupov k hardvéru na strane hostiteľského systému sa používajú existujúce ovládače s podporou paravirtualizácie, alebo môže prebiehať priama viazanosť zariadení na virtuálny stroj, čo umožňuje prenášať existujúce hostiteľské systémy do prostredia založeného na OpenHCL bez nutnosti ich úprav. Okrem toho OpenHCL obsahuje komponenty na diagnostiku a ladenie virtuálních strojů, vykonávané s použitím rozšírení na zabezpečenie dôverných výpočtov.

Na rozdiel od už existujúceho otvoreného projektu COCONUT-SVSM (Secure VM Service Module), ktorý poskytuje služby a emulované zariadenia pre hostiteľské systémy prevádzkované v dôverných virtuálnych strojoch (CVM, Dôverný virtuálny stroj), OpenHCL umožňuje používať v hostiteľských systémoch štandardné rozhrania, zatiaľ čo COCONUT-SVSM vyžaduje organizáciu špeciálnej interakcie so SVSM, úpravy hostiteľského systému a používanie samostatných ovládačov.

Medzi aplikácie paravirtualizácie OpenHCL patrí aj prechod existujúcich systémov na používanie hardvérových akcelerátorov Azure Boost bez nutnosti úprav diskového obrazu hostiteľského systému; prevádzka existujúcich hostiteľských systémov vo virtuálnych strojoch, ktoré poskytujú dôverné výpočty (napríklad na báze Intel TDX a AMD SEV-SNP); organizácia overenej bootovania virtuálnych strojov pomocou režimu UEFI Secure Boot a vTPM.

Samostatne sa uvádza, že projekt OpenVMM je zameraný na používanie s OpenHCL a zatiaľ nie je pripravený na samostatné nasadenie na hostiteľských systémoch pre praktické aplikácie koncovými používateľmi. Medzi problémy OpenVMM, ktoré bránia jeho použitiu v hostiteľských prostrediach v tradičnom kontexte, mimo väzby s OpenHCL, patrí: slabá dokumentácia správcovského rozhrania; nedostatočná optimalizácia výkonu backendov pre úložiská, siete a grafiku; nedostatok podpory niektorých ovládačov (napríklad IDE diskov a PS/2 myší); žiadna záruka stability API a funkčnosti. V súčasnosti spojenie OpenVMM a OpenHCL dosiahlo úroveň priemyselného nasadenia a je zapojené spoločnosťou Microsoft v platforme Azure (Azure Boost SKU) na zabezpečenie prevádzky viac ako 1,5 milióna virtuálnych strojov.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster