Ažuriranje na Intel Cloud Hypervisor 0.3 i Amazon Firecracker 0.19 hipervizore napisane u Rustu

Intel опубликовала nova verzija hipervizora Cloud Hypervisor 0.3. Hipervizor je izgrađen na komponentama
zajednički projekt Rust-VMM, u kojem uz Intel sudjeluju i Alibaba, Amazon, Google i Red Hat. Rust-VMM je napisan u jeziku Rust i omogućuje vam stvaranje hipervizora specifičnih za zadatak. Cloud Hypervisor jedan je takav hipervizor koji pruža monitor virtualnog stroja (VMM) visoke razine koji radi povrh KVM-a i optimiziran je za zadatke izvorne u oblaku. Šifra projekta dostupno licenciran pod Apache 2.0.

Cloud Hypervisor fokusiran je na pokretanje modernih distribucija Linuxa pomoću paravirtualiziranih uređaja koji se temelje na virtilu. Među navedenim ključnim ciljevima su: visoka brzina odziva, niska potrošnja memorije, visoka izvedba, pojednostavljena konfiguracija i smanjenje mogućih vektora napada.

Podrška za emulaciju svedena je na minimum, a fokus je na paravirtualizaciji. Trenutno su podržani samo x86_64 sustavi, ali je planirana podrška za AArch64. Za sustave za goste trenutno su podržane samo 64-bitne verzije Linuxa. CPU, memorija, PCI i NVDIMM konfigurirani su u fazi sklapanja. Moguće je migrirati virtualne strojeve između poslužitelja.

U novoj verziji:

  • Nastavljen je rad na premještanju paravirtualiziranog I/O-a u zasebne procese. Dodana je mogućnost korištenja pozadina za interakciju s blok uređajima vhost-korisnik-blk. Promjena vam omogućuje povezivanje blok uređaja temeljenih na vhost-user modulu na Cloud Hypervisor, kao što su SPDK, kao pozadina za paravirtualiziranu pohranu;
  • Podrška za premještanje mrežnih operacija u pozadinu, predstavljena u posljednjem izdanju vhost-korisnička-net, proširen novom pozadinom koja se temelji na virtualnom mrežnom upravljačkom programu TAP. Pozadina je napisana u Rustu i sada se koristi u Cloud Hypervisoru kao glavna para-virtualizirana mrežna arhitektura;
  • Kako bi se povećala učinkovitost i sigurnost komunikacije između glavnog okruženja i gostujućeg sustava, predlaže se hibridna implementacija utičnica s AF_VSOCK adresiranjem (virtualne mrežne utičnice), koje rade kroz virtio. Implementacija se temelji na razvoju projekta Petarda, razvijen od strane Amazona. VSOCK vam omogućuje korištenje standardnog POSIX Sockets API-ja za interakciju između aplikacija na strani gosta i hosta, što olakšava prilagodbu običnih mrežnih programa za takvu interakciju i implementaciju interakcije nekoliko klijentskih programa s jednom poslužiteljskom aplikacijom;
  • Pružena početna podrška za API za upravljanje korištenjem HTTP protokola. U budućnosti će ovaj API omogućiti pokretanje asinkronih operacija na gostujućim sustavima, kao što su resursi za vruće uključivanje i migracijska okruženja;
  • Dodan je sloj s implementacijom prijenosa koji se temelji na virtio MMIO (Memory mapped virtio), koji se može koristiti za stvaranje minimalističkih sustava za goste koji ne zahtijevaju emulaciju PCI sabirnice;
  • Kao dio inicijative za proširenje podrške za pokretanje ugniježđenih gostujućih sustava, Cloud Hypervisor je dodao mogućnost prosljeđivanja paravirtualiziranih IOMMU uređaja putem virtia, što poboljšava sigurnost ugniježđenih i izravnog prosljeđivanja uređaja.
  • Omogućena podrška za Ubuntu 19.10;
  • Dodana mogućnost pokretanja sustava za goste s više od 64 GB RAM-a.

Dodatno, možete napomenuti novo izdanje susjedni razvijena monitor virtualnog stroja Petarda, također napisan u Rustu, temeljen na Rust-VMM-u i radi povrh KVM-a. Firecracker je fork projekta CrosVM, koju Google koristi za pokretanje aplikacija Linux и Android u OS-u Chrome. Firecracker razvija Amazon Web Services za poboljšanje performansi i učinkovitosti platformi AWS Lambda i AWS Fargate.

Platforma je dizajnirana za pokretanje virtualnih strojeva s minimalnim opterećenjem i pruža alate za stvaranje i upravljanje izoliranim okruženjima i uslugama izgrađenim korištenjem razvojnog modela bez poslužitelja (funkcija kao usluga). Firecracker nudi lagane virtualne strojeve, zvane microVM, koji koriste hardverske virtualizacijske tehnologije za pružanje potpune izolacije, a istovremeno pružaju performanse i fleksibilnost tradicionalnih spremnika. Na primjer, kada koristite Firecracker, vrijeme od trenutka pokretanja microVM do početka izvršavanja aplikacije ne prelazi 125 ms, što vam omogućuje pokretanje novih virtualnih strojeva s intenzitetom do 150 okruženja u sekundi.

Novo izdanje Firecrackera dodaje način rada bez pokretanja API rukovatelja ("—no-api"), ograničavajući okruženje samo na postavke tvrdo kodirane u konfiguracijskoj datoteci. Statička konfiguracija navedena je putem opcije “--config-file” i definirana je u JSON formatu. Iz opcija naredbenog retka također je dodana podrška za razdjelnik “—”, nakon čega se navedene zastavice prosljeđuju duž lanca bez obrade.

Amazon, koji razvija Firecracker, također najavio o pružanju sponzorstva developerima programskog jezika Rust. Napominje se da se Rust sve više koristi u projektima tvrtke, a razvoj na njemu već je implementiran u usluge kao što su Lambda, EC2 i S3. Amazon je projektu Rust osigurao infrastrukturu za pohranjivanje izdanja i nadogradnji u S3, pokretanje regresijskih testova u EC2 i održavanje stranice docs.rs s dokumentacijom za sve pakete iz repozitorija crates.io.

Amazon također podnijeti program AWS promotivni kredit, gdje projekti otvorenog koda mogu dobiti besplatan pristup AWS uslugama koje se mogu koristiti za pohranu resursa, izgradnju, kontinuiranu integraciju i testiranje. Među projektima koji su već odobreni za sudjelovanje u programu, uz Rust, zapaženi su AdoptOpenJDK, Maven Central, Kubernetes, Prometheus, Envoy i Julia. Podnesci se prihvaćaju iz bilo kojeg projekta otvorenog koda isporučenog pod licencama koje je odobrio OSI.

Izvor: opennet.ru

Dodajte komentar