Hyperlight, Microsoftov odprtokodni projekt, ki se integrira v aplikacije, ki izvajajo izolirano ali nezaupljivo kodo

hipersvetlobni logotip

Microsoft je pred kratkim napovedal začetek novega odprtokodnega projekta z imenom » Hyperlight «. Gre za hipervizor, posebej zasnovan za integracijo v aplikacije, ki zahtevajo izvajanje izolirane kode, bodisi zaradi varnostnih razlogov bodisi za obravnavo nezaupanja vrednih fragmentov kode.

Hyperlight se pozicionira kot deljena knjižnica, ki omogoča delovanje funkcij znotraj mikro-VM-jev, kar zmanjšuje zakasnitev in omogoča učinkovito komunikacijo z gostovanimi funkcijami.

O Hyperlight

V primerjavi s tradicionalnimi virtualnimi stroji Hyperlight izstopa po nizkem vplivu na zmogljivost, saj v primerjavi s časom zagona standardnega virtualnega stroja, ki zahteva vsaj 120 milisekund, Hyperlight omogoča ustvarjanje mikro virtualnih strojev v samo 1 do 2 milisekundah, kar omogoča funkcionalno izolacijo.

Poleg tega je omenjeno, da čeprav okolja, kot je Wasmtime za WebAssembly, ponujajo še nižje čase, 0,03 milisekunde, Hyperlight poskuša ponuditi idealno ravnovesje med izolacijo in funkcionalnostjo za kompleksne aplikacije.

Za razliko od tradicionalnih nastavitev mikro-VM-ji v Hyperlightu ne uporabljajo jedra ali celotnega operacijskega sistema . Namesto tega je virtualni stroj reduciran na samostojen program , ki vključuje funkcijsko kodo, minimalno specializirano jedro in potrebno izvajalno okolje, ki se izvaja v enem samem pomnilniškem območju z dodeljenim virtualnim procesorjem, brez particioniranja procesov ali preslikave naprav.

Hyperlight omogoča te prilagoditve v številnih scenarijih: za integracijo funkcij prehoda interneta stvari (IoT), uporabo v industrijski avtomatizaciji, visoko zmogljive storitve v oblaku itd.

Razvojni potek dela s Hyperlightom vključuje povezovanje glavne kode aplikacije s knjižnico Hyperlight Host , ki upravlja mikro-VM-je. Izolirana koda, ki se izvaja znotraj teh mikro-VM-jev, uporablja knjižnico Hyperlight Guest, ki zagotavlja potrebne API-je za zunanjo interakcijo in omogoča, da se koda izvaja popolnoma neodvisno od gostiteljskega operacijskega sistema. S to arhitekturo si Hyperlight prizadeva na novo opredeliti izolirano izvajanje funkcij ter ponuditi učinkovit in varen pristop za sodobne aplikacije.

Ključna značilnost tehnologije Hyperlight je njena sposobnost vzpostavitve dvosmerne interakcije med gostiteljsko aplikacijo in izoliranimi funkcijami. Aplikacijam ne omogoča le klicanja funkcij, ki gostujejo v izoliranih okoljih, temveč tem funkcijam omogoča tudi dostop do določenih elementov gostitelja. Vendar je ta dostop strogo nadzorovan zaradi zagotavljanja varnosti. Izolirane funkcije lahko privzeto komunicirajo z gostiteljem le prek minimalnega API-ja, ki omogoča izmenjavo sporočil. Ta omejitev zagotavlja nadzorovano okolje in zmanjšuje varnostna tveganja, povezana s funkcionalno izolacijo.

Glede svojih dolgoročnih načrtov Microsoft omenja svojo namero, da Hyperlight preoblikuje v širši sodelovalni projekt pod vodstvom fundacije Cloud Native Computing Foundation (CNCF). Cilj te poteze je spodbujati nevtralen in odprt razvoj, brez izključnega vpliva določenih prodajalcev. CNCF, ki deluje v okviru fundacije Linux Foundation, je že odgovoren za vplivne projekte, kot so Kubernetes, Containerd, Istio in gRPC, kar dokazuje njegovo pomembno sposobnost upravljanja ključnih tehnoloških pobud znotraj ekosistema računalništva v oblaku. Ta korak obljublja razširitev dosega Hyperlighta in utrjevanje njegovega položaja kot bistvenega orodja na področju aplikacij, ki so izvorno v oblaku.

Glede trenutne podpore platform je pomembno omeniti, da podpira več okolij, kar zagotavlja njegovo vsestranskost. V Linuxu je združljiv s hipervizorji KVM in mshv (Microsoft Hypervisor na Azure Linuxu), medtem ko v sistemu Windows uporablja WHP (Windows Hypervisor Platform) in WSL2 s KVM (macOS je trenutno izključen).

Če vas zanima več , morate vedeti, da je projekt razvit v Rustu in je na voljo pod licenco Apache 2.0 . Podrobnosti najdete na naslednji povezavi.


Dodaj kot prednostni vir v Googlu