Microsoft je nedavno najavio pokretanje novog projekta otvorenog koda pod nazivom " Hyperlight ". Riječ je o hipervizoru posebno dizajniranom za integraciju u aplikacije koje zahtijevaju izvršavanje izoliranog koda, bilo iz sigurnosnih razloga ili za rukovanje nepouzdanim fragmentima koda.
Hyperlight se pozicionira kao dijeljena biblioteka, omogućavajući funkcijama da se izvršavaju unutar mikro-VM-ova, minimizirajući latenciju i olakšavajući efikasnu komunikaciju sa hostovanim funkcijama.
O Hyperlight-u
U poređenju sa tradicionalnim virtuelnim mašinama, Hyperlight se ističe po svom niskom uticaju na performanse, jer u poređenju sa vremenom pokretanja standardne virtuelne mašine koje zahteva najmanje 120 milisekundi, Hyperlight omogućava kreiranje mikro-VM-ova za samo 1 do 2 milisekunde, omogućavajući funkcionalnu izolaciju.
Osim toga, spominje se da iako okruženja kao što je Wasmtime za WebAssembly nude još niža vremena, od 0,03 milisekundi, Hyperlight nastoji ponuditi idealnu ravnotežu između izolacije i funkcionalnosti za složene aplikacije.
Za razliku od tradicionalnih postavki, mikro-VM-ovi u Hyperlightu ne koriste kernel ili potpuni operativni sistem . Umjesto toga, virtuelna mašina se svodi na samostalni program koji uključuje funkcionalni kod, minimalno specijalizirano kernel i potrebno okruženje za izvršavanje, koje se izvršava u jednoj memorijskoj regiji s dodijeljenim virtuelnim CPU-om, bez particioniranja procesa ili mapiranja uređaja.
Hyperlight omogućava ova prilagođavanja u širokom rasponu scenarija: za integraciju funkcija mrežnog prolaza Interneta stvari (IoT), korištenje u industrijskoj automatizaciji, usluge u oblaku visokih performansi itd.
Razvojni tok rada s Hyperlightom uključuje povezivanje glavnog koda aplikacije s Hyperlight Host bibliotekom , koja upravlja mikro-VM-ovima. Izolirani kod koji se izvršava unutar ovih mikro-VM-ova koristi Hyperlight Guest biblioteku, koja pruža potrebne API-je za vanjsku interakciju i omogućava kodu da se izvršava potpuno nezavisno od host operativnog sistema. Ovom arhitekturom, Hyperlight ima za cilj redefinirati izolirano izvršavanje funkcija, nudeći efikasan i siguran pristup za moderne aplikacije.

Ključna karakteristika Hyperlight-a je njegova sposobnost uspostavljanja dvosmjerne interakcije između host aplikacije i izoliranih funkcija. Ne samo da omogućava aplikacijama pozivanje funkcija hostovanih u izoliranim okruženjima, već i omogućava tim funkcijama pristup određenim elementima hosta. Međutim, ovaj pristup je strogo kontroliran kako bi se osigurala sigurnost. Podrazumijevano, izolirane funkcije mogu komunicirati s hostom samo putem minimalnog API-ja koji olakšava razmjenu poruka. Ovo ograničenje osigurava kontrolirano okruženje i smanjuje sigurnosne rizike povezane s funkcionalnom izolacijom.
Što se tiče svojih dugoročnih planova , Microsoft spominje svoju namjeru da transformiše Hyperlight u širi kolaborativni projekat pod upravom Cloud Native Computing Foundation (CNCF). Ovaj potez ima za cilj promovisanje neutralnog i otvorenog razvoja, oslobođenog isključivog uticaja određenih dobavljača. CNCF, koji posluje pod okriljem Linux Foundation, već je odgovoran za uticajne projekte kao što su Kubernetes, Containerd, Istio i gRPC, demonstrirajući svoj značajan kapacitet za upravljanje ključnim tehnološkim inicijativama unutar ekosistema cloud computinga. Ovaj korak obećava proširenje dosega Hyperlighta i učvršćivanje njegove pozicije kao esencijalnog alata u oblasti cloud-native aplikacija.
Što se tiče trenutne podrške za platforme , važno je spomenuti da podržava više okruženja kako bi se osigurala njegova svestranost. Na Linuxu je kompatibilan s KVM i mshv hipervizorima (Microsoft Hypervisor na Azure Linuxu), dok na Windowsu koristi WHP (Windows Hypervisor Platform) i WSL2 s KVM-om (macOS je trenutno isključen).
Konačno, ako ste zainteresirani da saznate više , trebali biste znati da je projekat razvijen u Rustu i dostupan je pod Apache 2.0 licencom . Detalje možete pronaći na sljedećem linku.