Microsoft-ek OpenVMM hipervisorea eta OpenHCL parabirtualizazio plataforma sortu zituen

Microsoft-ek OpenHCL parabirtualizatzeko geruzaren iturburu irekia eta OpenVMM makina birtualaren monitorea iragarri ditu, OpenHCLren lana antolatzeko bereziki garatua. OpenVMM eta OpenHCL kodea Rust-en idatzita dago eta MIT lizentziapean banatzen da. OpenVMM sistema eragilearen nukleoarekin segurtasun eraztun berean lan egiten duten bigarren mailako hipervisoreei egiten die erreferentzia, VirtualBox eta VMware Workstation bezalako produktuen antzera. Linux (x86_64), Windows (x86_64, Aarch64) eta macOS (x86_64, Aarch64) eta macOS (xXNUMX_XNUMX, AarchXNUMX) oinarritutako sistema ostalarien gainean funtzionatzen du, emandako KVM, SHV (Microsoft Hypervisor), WHP (Windows Hypervisor Platform) eta Hypervisor birtualizazio APIak erabiliz. OS datuen arabera.

OpenVMM-n onartzen diren funtzioen artean:

  • Abiarazi UEFI eta BIOS moduetan, Linux kernelaren abiarazte zuzena;
  • Virtio kontrolatzaileetan oinarritutako parabirtualizaziorako laguntza (virtio-fs, virtio-9p, virtio-net, virtio-pmem)
  • VMBus-en oinarritutako parabirtualizazio euskarria (storvsp, netvsp, vpci, framebuffer);
  • vTPM, NVMe, UART, i440BX + PIIX4 chipset, IDE HDD, PCI eta VGA emulazioa;
  • Grafikoak, sarrera-gailuak, kontsolak, biltegiratzea eta sarerako sarbidea birbidaltzeko backendak;
  • Kudeaketa komando-lerroko interfazearen, kontsola interaktibo, gRPC eta ttrpc bidez.

OpenHCL parabirtualizazio osagaiak (paravisor) OpenVMM hipervisorearen gainean exekutatzen dituen ingurune gisa kokatzen da. OpenVMM eta OpenHCLn oinarritutako birtualizazio sistemen funtsezko ezaugarria da parabirtualizazio osagaiak sistema ostalariaren aldean ez exekutatzen direla, sistema gonbidatuaren makina birtual berean baizik. Sistema eragile gonbidatuaren parabirtualizazio geruzaren isolamendua bigarren mailako OpenVMM hipervisoreak bermatzen du. Modu honetan erabiltzen denean, OpenHCL gonbidatuen ingurunean exekutatzen den sistema eragilea baino pribilegio maila altuagoan exekutatzen den firmware birtualtzat har daiteke.

Sistema gonbidatua eta OpenHCL osagaiak bereiztea konfiantza maila birtualen (VTL, Virtual Trust Level) kontzeptua erabiliz egiten da, eta horretarako software mekanismoak zein hardware teknologiak erabil daitezke, hala nola Intel TDX (Trust Domain Extensions). ), AMD SEV-SNP (Secure Encrypted Virtualization-Secure Nested Paging) eta ARM CCA (Confidential Compute Architecture). OpenHCL osagaiak exekutatzeko, Linux nukleoaren eraikuntza txikitu bat erabiltzen da, OpenVMM exekutatzeko beharrezkoak diren gutxieneko osagaiak soilik biltzen dituena.

Microsoft-ek OpenVMM hipervisorea eta OpenHCL parabirtualizazio plataforma sortu zituen

OpenHCL x86-64 eta ARM64 plataformetan exekutatu daiteke, eta Intel TDX, AMD SEV-SNP eta ARM CCA luzapenak onartzen ditu isolamendu gehigarrirako. OpenHCL-k ekipamenduetarako sarbidea antolatzeko, gailu birtualen funtzionamendua bermatzeko eta hardware gailuak emulatzeko (adibidez, gako kriptografikoak gordetzeko txipa - vTPM) emulatu daitekeen zerbitzu, kontrolatzaile eta emuladore multzo bat biltzen du.

Gonbidatu sistemaren aldeko hardwarerako sarbidea itzultzeko, parabirtualizaziorako gaituta dauden kontrolatzaileak erabiltzen dira, edo gailuak zuzenean lotu daitezke makina birtualera, gonbidatu sistemak OpenHCL oinarritutako ingurune batera migratzeko aukera emanez aldaketarik gabe. OpenHCL-k diagnostiko eta arazketa osagaiak ere baditu. makina birtualak, konputazio konfidentziala bermatzeko luzapenak erabiliz egina.

COCONUT-SVSM (Secure VM Service Module) kode irekiko proiektuaren aldean, zeinak konfidentzialki exekutatzen diren gonbidatu sistemetarako zerbitzuak eta emulatutako gailuak eskaintzen dituen. makina birtualak (CVM, Makina Birtual Konfidentziala), OpenHCL-k gonbidatu sistemetan interfaze estandarrak erabiltzea ahalbidetzen du, COCONUT-SVSM-k, berriz, SVSM-rekin elkarreragin berezia antolatzea, gonbidatu sisteman aldaketak egitea eta kontrolatzaile bereiziak erabiltzea eskatzen duen bitartean.

OpenHCL paravisor-aren aplikazioen artean, lehendik dauden sistemak trantsizio gisa Azure Boost hardware-azeleragailuak erabil ditzaten, sistema gonbidatuaren diskoaren irudian aldaketak egin beharrik gabe aipatzen dira; Exekutatu lehendik dauden gonbidatuak isilpeko informatika eskaintzen duten makina birtualetan (adibidez, Intel TDX eta AMD SEV-SNP-n oinarrituta); UEFI Secure Boot eta vTPM modua erabiliz makina birtualen egiaztatutako abioaren antolaketa.

Bereizi da OpenVMM proiektua OpenHCL-rekin erabiltzera bideratua dagoela eta oraindik ez dagoela prest azken erabiltzaileek produkzio-inplementaziorako sistema ostalarietan erabiltzeko. Testuinguru tradizionalean, OpenVMM-tik kanpo, ostalari-inguruneetan erabiltzea eragozten duten OpenVMM-en arazoen artean, hauek aipatzen dira: kontrol interfazearen dokumentazio eskasa; backend-aren errendimenduaren optimizazio egokirik eza biltegiratze, sare eta grafikoetarako; Gidari batzuen laguntza eza (adibidez, IDE unitateak eta PS/2 saguak); ez dago APIaren egonkortasuna eta funtzionaltasuna bermatzen. Aldi berean, OpenVMM eta OpenHCL-en konbinazioa dagoeneko industria-inplementazio mailara iritsi da eta Microsoft-ek Azure plataforman (Azure Boost SKU) erabiltzen du 1.5 milioi makina birtual baino gehiagoren funtzionamenduan laguntzeko.

Iturria: opennet.ru

Gehitu iruzkin berria