Microsoft avduket nylig lanseringen av et nytt åpen kildekode-prosjekt, som har navnet "Hyperlight«. Dette er en hypervisor designet spesielt for å integreres i applikasjoner som krever isolert kodekjøring, enten av sikkerhetsgrunner eller for å håndtere uklarerte fragmenter.
Hyperlight er posisjonert som et delt bibliotek, som lar deg utføre funksjoner i mikro-VM-er, minimere latens og tilrettelegge for effektiv kommunikasjon med vertsfunksjoner.
Om Hyperlight
Sammenlignet med tradisjonelle virtuelle maskiner, Hyperlight skiller seg ut for sin lave innvirkning på ytelsen, siden sammenlignet med oppstart av en standard virtuell maskin som krever minst 120 millisekunder, Hyperlight lar deg lage mikro-VM-er på bare 1 til 2 millisekunder, muliggjør isolasjon på et funksjonsnivå.
I tillegg nevnes det at selv om miljøer som Wasmtime for WebAssembly tilbyr enda lavere tider, på 0,03 millisekunder, søker Hyperlight å tilby en ideell balanse mellom isolasjon og funksjonalitet for komplekse applikasjoner.
I motsetning til tradisjonelle konfigurasjoner, mikro-VM-er i Hyperlight bruker ikke en kjerne eller et fullstendig operativsystem. I stedet den virtuelle maskinen er redusert til et autonomt program som inkluderer funksjonskoden, en minimal spesialisert kjerne og nødvendig utførelsestid, kjører i en enkelt minneregion med en tilordnet virtuell CPU, uten partisjoneringsprosesser eller kartleggingsenheter.
Hyperlight muliggjør disse tilpasningene i et bredt spekter av scenarier: for integrering av Internet of Things (IoT) gatewayfunksjoner, bruk i industriell automasjon, høyytelses skytjenester, etc.
Utviklingsflyten med Hyperlight innebærer å koble hovedapplikasjonskoden med Hyperlight Host-biblioteket, ansvarlig for å administrere mikro-VM-er. For hans del Isolert kode som kjører inne i disse mikro-VM-ene bruker Hyperlight Guest-biblioteket, som tilbyr de nødvendige API-ene for å samhandle med utsiden og lar koden kjøre helt uavhengig av vertsoperativsystemet. Med denne arkitekturen søker Hyperlight å redefinere den isolerte utførelse av funksjoner, og tilbyr en effektiv og sikker tilnærming for moderne applikasjoner.
en fremtredende trekk av Hyperlight er dens evne til å etablere en toveis interaksjon mellom vertsapplikasjonen og isolerte funksjoner, siden det ikke bare lar applikasjoner kalle funksjoner som er vert i isolerte miljøer, men også lar disse funksjonene få tilgang til visse elementer av verten. Imidlertid dette Tilgang er strengt kontrollert for å sikre sikkerhet siden som standard kan isolerte funksjoner bare kommunisere med verten gjennom en minimal API som letter utveksling av meldinger. Denne begrensningen sikrer et kontrollert miljø og reduserer sikkerhetsrisikoen forbundet med funksjonell isolasjon.
På deres side langsiktige planerMicrosoft nevner at den søker å gjøre Hyperlight til et samarbeidsprosjekt bredere under ledelse av Cloud Native Computing Foundation (CNCF). Denne bevegelsen har som mål å fremme nøytral og åpen utvikling, løsrevet fra den eksklusive innflytelsen fra spesifikke produsenter. CNCF, som opererer under Linux Foundation, er allerede ansvarlig for innflytelsesrike prosjekter som Kubernetes, Containerd, Istio og gRPC, noe som gir oss en idé om den store kapasiteten den har til å administrere nøkkelteknologiinitiativer i dataøkosystemet i skyen. Dette trinnet lover å utvide Hyperlights rekkevidde og etablere det som et viktig verktøy i det skybaserte applikasjonsområdet.
Som til gjeldende plattformstøtte, er det viktig å nevne at den støtter flere miljøer for å garantere allsidigheten. På Linux, støtter KVM og mshv hypervisorer (Microsoft Hypervisor på Azure Linux), mens den på Windows bruker WHP (Windows Hypervisor Platform) og WSL2 med KVM (foreløpig er macOS utelatt).
Endelig, hvis du er interessert i å vite mer om det, bør du vite at prosjektet er utviklet i Rust, og er dTilgjengelig under Apache 2.0-lisensen. Du kan sjekke detaljene i følgende lenke.