MirageOS 3.6 kaleratzea, hipervisor baten gainean aplikazioak exekutatzeko plataforma

ospatu proiektuaren kaleratzea Mirage OS 3.6, aplikazio bakarrerako sistema eragileak sortzeko aukera ematen duena, zeinetan aplikazioa "unikernel" autonomo gisa entregatzen dena, sistema eragileak, OS kernel bereizi bat eta edozein geruza erabili gabe exekutatu daitekeena. OCaml hizkuntza erabiltzen da aplikazioak garatzeko. Proiektuaren kodea arabera banatuta doako ISC lizentziapean.

Sistema eragilearen berezko behe-mailako funtzionalitate guztiak aplikazioari atxikitako liburutegi baten moduan ezartzen dira. Aplikazioa edozein OStan garatu daiteke, eta ondoren nukleo espezializatu batean konpilatzen da (kontzeptua unikernel), zuzenean exekutatu daitekeena Xen, KVM, BHyve eta VMM (OpenBSD) hipervisoren gainean, mugikorrentzako plataformaren gainean, prozesu gisa POSIX-ekin bat datorren ingurune batean, edo Amazon Elastic Compute Cloud eta Google Compute Engine hodeiko inguruneetan.

Sortutako inguruneak ez du soberan dagoen ezer eta hipervisorearekin zuzenean elkarreragiten du gidaririk edo sistema geruzarik gabe, eta horrek kostu orokorrak nabarmen murriztea eta segurtasuna areagotzea ahalbidetzen du. MirageOS-ekin lan egitea hiru fasetan sartzen da: konfigurazioa prestatzea ingurunean erabiltzen direnak identifikatzea. OPAM paketeak, ingurumena eraikitzea eta ingurumena abian jartzea. Xen-en gainean exekutatzeko exekuzio-denbora kendutako nukleo batean oinarritzen da Mini-OS, eta beste hipervisor eta nukleoan oinarritutako sistemetarako Solo5.

Aplikazioak eta liburutegiak goi-mailako OCaml hizkuntzan sortzen diren arren, sortzen diren inguruneek nahiko errendimendu ona eta tamaina minimoa erakusten dute (adibidez, DNS zerbitzariak 200 KB baino ez ditu hartzen). Inguruneen mantentze-lanak ere erraztu egiten dira, izan ere, programa eguneratzea edo konfigurazioa aldatzea beharrezkoa bada, nahikoa baita ingurune berri bat sortzea eta abiaraztea. Onartua hainbat dozena liburutegi OCaml hizkuntzan sareko eragiketak egiteko (DNS, SSH, OpenFlow, HTTP, XMPP, etab.), biltegiratzearekin lan egin eta datuen tratamendu paraleloa eskaintzeko.

Bertsio berriaren aldaketa nagusiak tresna-kutxan eskaintzen diren funtzio berriei euskarria ematearekin lotuta daude Bakarrik5 0.6.0 (unikernel exekutatzeko sandbox ingurunea):

  • Unikernel MirageOS ingurune isolatu batean exekutatzeko gaitasuna gehitu da spt (β€œsandboxed process tender”) tresna-kutxak eskaintzen duena Solo5. Spt backend-a erabiltzean, MirageOS kernelak Linux erabiltzaileen prozesuetan exekutatzen dira, eta horiei isolamendu minimoa aplikatzen zaie seccomp-BPF-n oinarrituta;
  • Ezarritako laguntza aplikazioaren manifestua Solo5 proiektutik, unikernel bati atxikitako hainbat sare egokitzaile eta biltegiratze gailu definitzeko aukera ematen duena, hvt, spt eta muen backendetan oinarrituta (gaur egun gailu bakarrera mugatuta dago genode eta virtio backendetarako erabilera);
  • Solo5-en (hvt, spt) oinarritutako backenden babesa indartu egin da, adibidez, SSP (Stack Smashing Protection) moduan eraikitzea eman da.

Iturria: opennet.ru

Gehitu iruzkin berria