Rust-en idatzitako Intel Cloud Hypervisor 0.3 eta Amazon Firecracker 0.19 eguneratzea

Intel argitaratuko hipervisor bertsio berria Hodeiko Hipervisor 0.3. Hipervisoria osagaien gainean eraikita dago
proiektu bateratua Herdoila-VMM, eta bertan, Intelez gain, Alibaba, Amazon, Google eta Red Hat-ek ere parte hartzen dute. Rust-VMM Rust hizkuntzan idatzita dago eta ataza espezifikoko hipervisorak sortzeko aukera ematen du. Cloud Hypervisor KVM-ren gainean exekutatzen den goi-mailako makina birtualeko monitorea (VMM) eskaintzen duen hiperbissore bat da eta hodeiko jatorrizko zereginetarako optimizatuta dago. Proiektuaren kodea eskuragarri Apache 2.0 lizentziapean.

Cloud Hypervisor Linux banaketa modernoak exekutatzen ditu virtioan oinarritutako gailu parabirtualizatuak erabiliz. Aipatu helburu nagusien artean honako hauek daude: erantzun handia, memoria-kontsumo txikia, errendimendu handia, konfigurazio sinplifikatua eta balizko eraso-bektoreak murriztea.

Emulazio euskarria gutxienekoa da eta parabirtualizazioan jartzen da arreta. Gaur egun x86_64 sistemak bakarrik onartzen dira, baina AArch64 laguntza aurreikusten da. Sistema gonbidatuetarako, Linux-en 64 biteko eraikitzeak soilik onartzen dira gaur egun. CPU, memoria, PCI eta NVDIMM muntaketa fasean konfiguratzen dira. Zerbitzarien artean makina birtualak migratzeko aukera dago.

Bertsio berrian:

  • I/O parabirtualizatuak prozesu bereizietara eramateko lanak jarraitu zuen. Backend-ak erabiltzeko gaitasuna gehitu da bloke gailuekin elkarreragiteko vhost-user-blk. Aldaketak vhost-user moduluan oinarritutako bloke gailuak Cloud Hypervisor-era konektatzeko aukera ematen du, adibidez SPDK, biltegiratze parabirtualizaturako backend gisa;
  • Sareko eragiketak backendetara eramateko laguntza, azken bertsioan sartua vhost-user-net, sare birtualeko kontrolatzaile batean oinarritutako backend berri batekin zabaldu da TAP. Backend-a Rust-en idatzita dago eta gaur egun Cloud Hypervisor-en erabiltzen da sare para-birtualizatutako arkitektura nagusi gisa;
  • Ostalari-ingurunearen eta sistema gonbidatuaren arteko komunikazioen eraginkortasuna eta segurtasuna areagotzeko, AF_VSOCK helbideratzearekin (sare birtualeko sockets) socketen ezarpen hibrido bat proposatzen da, virtio bidez lan egiten duena. Ezarpena proiektuaren garapenean oinarritzen da Firecracker, Amazonek garatua. VSOCK-ek POSIX Sockets API estandarra erabiltzeko aukera ematen du gonbidatuen eta ostalariaren aldean aplikazioen arteko elkarrekintzarako, eta horrek erraz egiten du sareko programa arruntak elkarrekintza honetarako egokitzea eta hainbat bezero-programaren elkarrekintza zerbitzari-aplikazio batekin ezartzea;
  • Kudeaketa APIrako hasierako laguntza eskaini zuen HTTP protokoloa erabiliz. Etorkizunean, API honek sistema gonbidatuetan eragiketa asinkronoak abiaraztea ahalbidetuko du, hot-plugging baliabideak eta migrazio inguruneak adibidez;
  • Virtio MMIO (Memory mapped virtio) oinarritutako garraio inplementazioarekin geruza bat gehitu da, PCI bus emulazioa behar ez duten gonbidatu sistema minimalistak sortzeko erabil daitekeena;
  • Habiaratutako sistema gonbidatuak exekutatzeko laguntza zabaltzeko ekimenaren baitan, Cloud Hypervisor-ek IOMMU parabirtualizatutako gailuak virtio bidez birbidaltzeko gaitasuna gehitu du, eta horrek gailuen habiaratu eta zuzeneko birbidalpenaren segurtasuna hobetzen du.
  • Ubuntu 19.10-rako laguntza eskaini du;
  • 64 GB RAM baino gehiago dituzten sistema gonbidatuak exekutatzeko gaitasuna gehitu da.

Gainera, nabarmendu daiteke ale berria ondoan garatu makina birtualaren monitorea Firecracker, Rust-en ere idatzia, Rust-VMMn oinarrituta eta KVM-ren gainean exekutatzen dena. Petardo proiektuaren sardexka da CrosVM, Google-k aplikazioak abiarazteko erabiltzen du Linux ΠΈ Android ChromeOS-en. Firecracker Amazon Web Services-ek garatzen ari da AWS Lambda eta AWS Fargate plataformen errendimendua eta eraginkortasuna hobetzeko.

Plataformak makina birtualak kostu minimoarekin exekutatzeko diseinatuta dago eta zerbitzaririk gabeko garapen-eredu bat erabiliz (zerbitzu gisa funtzionatzen duen) ingurune isolatuak eta zerbitzuak sortzeko eta kudeatzeko tresnak eskaintzen ditu. Firecracker-ek makina birtual arinak eskaintzen ditu, microVM izenekoak, hardwarearen birtualizazio teknologiak erabiltzen dituztenak isolamendu osoa emateko edukiontzi tradizionalen errendimendua eta malgutasuna eskaintzen duten bitartean. Adibidez, Firecracker erabiltzean, microVM abiarazten den unetik aplikazioa exekutatzen hasten den arte ez da 125 ms gainditzen, eta horrek makina birtual berriak abiarazteko aukera ematen du segundoko 150 inguruneko intentsitatearekin.

Firecracker-en bertsio berriak funtzionamendu modu bat gehitzen du API kudeatzailea abiarazi gabe ("β€”no-api"), ingurunea konfigurazio fitxategian gogor kodetutako ezarpenetara soilik mugatuz. Konfigurazio estatikoa "--config-file" aukeraren bidez zehazten da eta JSON formatuan definitzen da. Komando-lerroko aukeretatik, "β€”" bereizlearen euskarria ere gehitu da, eta ondoren zehaztutako banderak prozesatu gabe pasatzen dira katean zehar.

Firecracker garatzen duen Amazon ere iragarri Rust programazio-lengoaiaren garatzaileei babesa ematean. Kontuan izan da Herdoila gero eta gehiago erabiltzen dela konpainiaren proiektuetan eta horren inguruko garapenak dagoeneko ezarrita daudela Lambda, EC2 eta S3 bezalako zerbitzuetan. Amazon-ek Rust proiektuari azpiegitura eman dio bertsioak eta eraikuntzak S3-n gordetzeko, EC2-n erregresio-probak egiteko eta crates.io biltegiko pakete guztien dokumentazioa duen docs.rs gune bat mantentzeko.

Amazon ere aurkeztu programa AWS promozio-kreditua, non kode irekiko proiektuek doako sarbidea lor dezaketen AWS zerbitzuetarako, baliabideak biltegiratzeko, eraikitzeko, etengabeko integraziorako eta probak egiteko erabil daitezkeen. Programan parte hartzeko jada onartutako proiektuen artean, Rust-ez gain, AdoptOpenJDK, Maven Central, Kubernetes, Prometheus, Envoy eta Julia nabarmendu ziren. Bidalketak OSIk onartutako lizentzien arabera emandako kode irekiko proiektuetatik onartzen dira.

Iturria: opennet.ru

Gehitu iruzkin berria