Microsoft iepen boarne de OpenVMM hypervisor en it OpenHCL paravirtualisaasjeplatfoarm

Microsoft hat de iepen boarne fan 'e laach oankundige foar paravirtualisaasje fan OpenHCL en de firtuele masinemonitor OpenVMM, spesjaal ûntwikkele foar it organisearjen fan it wurk fan OpenHCL. De OpenVMM- en OpenHCL-koade is skreaun yn Rust en wurdt ferspraat ûnder de MIT-lisinsje. OpenVMM ferwiist nei hypervisors op it twadde nivo dy't wurkje yn deselde feiligens ring mei it bestjoeringssysteem kernel, fergelykber mei produkten lykas VirtualBox en VMware wurkstasjonStencils. It stipet operaasje boppe op hostsystemen basearre op Linux (x86_64), Windows (x86_64, Aarch64) en macOS (x86_64, Aarch64), mei help fan de levere KVM, SHV (Microsoft Hypervisor), WHP (Windows Hypervisor Platform) en Hypervisor virtualisaasje API's troch de OS-gegevens.

Under de funksjes stipe yn OpenVMM:

  • Boot yn UEFI- en BIOS-modi, direkte boot fan 'e Linux-kernel;
  • Paravirtualisaasje-stipe basearre op Virtio-bestjoerders (virtio-fs, virtio-9p, virtio-net, virtio-pmem)
  • VMBus-basearre paravirtualisaasjestipe (storvsp, netvsp, vpci, framebuffer);
  • Emulaasje fan vTPM, NVMe, UART, i440BX + PIIX4-chipset, IDE HDD, PCI en VGA;
  • Backends foar it trochstjoeren fan grafiken, ynfierapparaten, konsoles, opslach en netwurk tagong;
  • Behear fia kommandorigelynterface, ynteraktive konsole, gRPC en ttrpc.

OpenHCL is gepositioneerd as in omjouwing mei paravirtualisaasjekomponinten (paravisor) dy't boppe op 'e OpenVMM hypervisor rinne. In wichtich skaaimerk fan virtualisaasjesystemen basearre op OpenVMM en OpenHCL is dat de komponinten foar paravirtualisaasje wurde útfierd net op 'e hostsysteemkant, mar yn deselde firtuele masine mei it gastsysteem. Isolaasje fan 'e paravirtualisaasjelaach fan it gastbestjoeringssysteem wurdt garandearre troch de hypervisor op twadde nivo OpenVMM. Wannear't op dizze manier brûkt wurdt, kin OpenHCL wurde beskôge as firtuele firmware dy't rint op in heger privileezjenivo as it bestjoeringssysteem dat rint yn 'e gastomjouwing.

De skieding fan it gastsysteem en OpenHCL-komponinten wurdt útfierd mei it konsept fan firtuele fertrouwensnivo's (VTL, Virtual Trust Level), foar de ymplemintaasje wêrfan sawol softwaremeganismen as hardwaretechnologyen kinne wurde brûkt, lykas Intel TDX (Trust Domain Extensions) ), AMD SEV-SNP (Secure Encrypted Virtualization-Secure Nested Paging) en ARM CCA (Confidential Compute Architecture). Om OpenHCL-komponinten út te fieren, wurdt in stripped-down build fan 'e Linux-kernel brûkt, dy't allinich de minimale komponinten omfettet dy't nedich binne om OpenVMM út te fieren.

Microsoft iepen boarne de OpenVMM hypervisor en it OpenHCL paravirtualisaasjeplatfoarm

OpenHCL kin rinne op x86-64 en ARM64 platfoarms, en stipet Intel TDX, AMD SEV-SNP en ARM CCA útwreidings foar ekstra isolemint. OpenHCL omfettet in set fan tsjinsten, bestjoerders en emulators brûkt om te organisearjen tagong ta apparatuer, soargje foar de wurking fan firtuele apparaten oan de gast systeem kant en emulate hardware apparaten (bygelyks, in chip foar it bewarjen fan kryptografyske kaaien - vTPM) kin wurde emulearre.

Om tagong ta hardware oan 'e kant fan it gastsysteem te oersetten, wurde besteande stjoerprogramma's dy't paravirtualisearring mooglik meitsje, of kinne apparaten direkt oan 'e firtuele masine keppele wurde, wêrtroch besteande gastsystemen sûnder oanpassing nei in OpenHCL-basearre omjouwing migrearre wurde kinne. OpenHCL omfettet ek diagnostyske en debugging-komponinten. firtuele masines, útfierd mei útwreidings om fertroulike kompjûterwurking te garandearjen.

Oars as it besteande iepen boarneprojekt COCONUT-SVSM (Secure VM Service Module), dat tsjinsten en emulearre apparaten leveret foar gastsystemen dy't yn fertroulike omstannichheden rinne firtuele masines (CVM, Confidential Virtual Machine), OpenHCL makket it gebrûk fan standertynterfaces yn gastsystemen mooglik, wylst COCONUT-SVSM de organisaasje fan spesjale ynteraksje mei SVSM fereasket, feroarings oan it gastsysteem en it gebrûk fan aparte stjoerprogramma's.

Under de applikaasjes fan 'e OpenHCL-paravisor wurde sokke senario's neamd as de oergong fan besteande systemen om Azure Boost-hardware-accelerators te brûken sûnder de needsaak om feroaringen te meitsjen oan it skiifôfbylding fan it gastsysteem; Run besteande gasten yn firtuele masines dy't jouwe fertroulik computing (Bygelyks, basearre op Intel TDX en AMD SEV-SNP); organisaasje fan ferifiearre boot fan firtuele masines mei UEFI Secure Boot en vTPM-modus.

It wurdt apart opmurken dat it OpenVMM-projekt rjochte is op gebrûk mei OpenHCL en is noch net klear foar stand-alone gebrûk op hostsystemen foar produksje-ymplemintaasjes troch ein brûkers. Under de problemen fan OpenVMM dy't it gebrûk yn host-omjouwings yn in tradisjonele kontekst foarkomme, bûten OpenHCL, wurde de folgjende neamd: minne dokumintaasje fan 'e kontrôleynterface; gebrek oan goede optimalisaasje fan backend-prestaasjes foar opslach, netwurk en grafiken; gebrek oan stipe foar guon bestjoerders (Bygelyks IDE-skiven en PS / 2-mûzen); der is gjin garânsje foar API stabiliteit en funksjonaliteit. Tagelyk hat de kombinaasje fan OpenVMM en OpenHCL al it nivo fan yndustriële ymplemintaasje berikt en wurdt brûkt troch Microsoft yn it Azure-platfoarm (Azure Boost SKU) om de operaasje fan mear as 1.5 miljoen firtuele masines te stypjen.

Boarne: opennet.ru

Add a comment