Ažuriranje za Intel Cloud Hypervisor 0.3 i Amazon Firecracker 0.19 napisano u Rustu

Intel objavljeno nova verzija hipervizora Cloud Hypervizor 0.3. Hipervizor je izgrađen oko komponenti
zajednički projekat Rust-VMM, u kojem pored Intela učestvuju i Alibaba, Amazon, Google i Red Hat. Rust-VMM je napisan na Rust jeziku i omogućava vam da kreirate hipervizore specifične za zadatke. Cloud Hypervisor je jedan od takvih hipervizora koji pruža monitor virtuelne mašine visokog nivoa (VMM) koji radi na vrhu KVM-a i optimizovan je za zadatke zasnovane na oblaku. Šifra projekta na raspolaganju licenciran pod Apache 2.0.

Cloud Hypervisor je fokusiran na pokretanje modernih Linux distribucija pomoću paravirtualiziranih uređaja baziranih na virtio. Među ključnim zadacima koji se spominju su: visok odziv, mala potrošnja memorije, visoke performanse, pojednostavljena konfiguracija i smanjenje mogućih vektora napada.

Podrška emulacije je svedena na minimum, a naglasak je na paravirtualizaciji. Trenutno su podržani samo x86_64 sistemi, ali podrška za AArch64 je na putu. Od gostujućih sistema, trenutno su podržane samo 64-bitne verzije Linuxa. CPU, memorija, PCI i NVDIMM postavke se prave u fazi izrade. Moguće je migrirati virtuelne mašine između servera.

U novoj verziji:

  • Nastavljen je rad na premeštanju paravirtuelizovanih I/O u zasebne procese. Dodana je mogućnost korištenja backenda za interakciju sa blok uređajima vhost-user-blk. Promjena vam omogućava da povežete blok uređaje zasnovane na vhost-user modulu na Cloud Hypervisor, kao što je SPDK, kao pozadina za paravirtualiziranu pohranu;
  • Uvedena u posljednjem izdanju, podrška za premeštanje mrežnih operacija na pozadinske mreže vhost-user-net, proširen sa novom pozadinom zasnovanom na drajveru virtuelne mreže TAP. Pozadina je napisana u Rustu i sada se koristi u Cloud Hypervisoru kao glavna paravirtualizirana mrežna arhitektura;
  • Da bi se povećala efikasnost i sigurnost komunikacije između domaćinskog okruženja i gostujućeg sistema, predložena je hibridna implementacija soketa sa AF_VSOCK adresiranjem (virtuelne mrežne utičnice) koje rade kroz virtio. Implementacija se zasniva na razvoju projekta Vatrometrazvio Amazon. VSOCK vam omogućava da koristite standardni POSIX Sockets API za interakciju između aplikacija na strani gostujućeg sistema i hosta, što olakšava prilagođavanje običnih mrežnih programa za takvu interakciju i implementaciju interakcije više klijentskih programa sa jednom serverskom aplikacijom;
  • Osigurana je početna podrška za API upravljanja koji koristi HTTP protokol. U budućnosti, ovaj API će omogućiti pokretanje asinhronih operacija na gostujućim sistemima, kao što su resursi za brzo povezivanje i migracijska okruženja;
  • Dodan sloj implementacije transporta baziran na virtio MMIO (Memory mapped virtio), koji se može koristiti za kreiranje minimalističkih gostujućih sistema koji ne zahtijevaju emulaciju PCI magistrale;
  • Kao dio inicijative za proširenje podrške za pokretanje ugniježđenih gostujućih sistema u Cloud Hypervisoru, dodana je mogućnost prosljeđivanja paravirtualiziranih IOMMU uređaja putem virtio-a, što vam omogućava da povećate sigurnost ugniježđenog i direktnog prosljeđivanja uređaja.
  • Obezbeđena podrška za Ubuntu 19.10;
  • Dodata mogućnost pokretanja gostujućih sistema sa više od 64 GB RAM-a.

Osim toga, može se primijetiti novo izdanje susjedni razvijen monitor virtuelne mašine Vatromet, takođe napisan u Rustu, zasnovan na Rust-VMM-u i radi na vrhu KVM-a. Firecracker je vilica projekta CrossVMkoristi Google za pokretanje aplikacija Linux и android u ChromeOS-u. Firecracker razvija Amazon Web Services kako bi poboljšao performanse i efikasnost platformi AWS Lambda i AWS Fargate.

Platforma je dizajnirana da pokreće virtuelne mašine sa minimalnim troškovima i pruža alate za kreiranje i upravljanje izolovanim okruženjima i uslugama izgrađenim korišćenjem modela razvoja bez servera (funkcioniše kao usluga). Firecracker nudi lagane virtuelne mašine, nazvane microVM, koje koriste tehnologije hardverske virtuelizacije kako bi ih u potpunosti izolovale, a istovremeno pružaju performanse i fleksibilnost tradicionalnih kontejnera. Na primjer, kada koristite Firecracker, vrijeme od početka microVM-a do početka aplikacije ne prelazi 125 ms, što vam omogućava da pokrenete nove virtuelne mašine sa intenzitetom do 150 okruženja u sekundi.

Novo izdanje Firecracker-a je dodalo način rada bez pokretanja API rukovatelja ("--no-api"), što ograničava okruženje samo na tvrdo kodirane postavke u konfiguracijskoj datoteci. Statička konfiguracija je specificirana preko opcije "--config-file" i definirana je u JSON formatu. Od opcija komandne linije, dodata je i podrška za graničnik “—”, nakon čega se zastavice prosljeđuju duž lanca bez obrade.

Razvijač petardi Amazon također najavljeno o sponzorstvu programera programskog jezika Rust. Napominje se da se Rust sve više koristi u projektima kompanije i da je razvoj na njemu već implementiran u servise kao što su Lambda, EC2 i S3. Amazon je obezbedio Rust projekat sa infrastrukturom za skladištenje izdanja i nadgradnji u S3, pokretanje regresionih testova na EC2 i održavanje docs.rs sajta sa dokumentacijom za sve pakete iz skladišta crates.io.

Amazon takođe uveo program AWS promotivni kredit, gdje otvoreni projekti mogu dobiti besplatan pristup AWS uslugama koje se mogu koristiti za skladištenje resursa, izgradnju, kontinuiranu integraciju i testiranje. Od već odobrenih projekata za učešće u programu, pored Rusta, ističu se AdoptOpenJDK, Maven Central, Kubernetes, Prometheus, Envoy i Julia. Prijave se prihvataju iz svih projekata otvorenog koda koji se isporučuju pod licencama koje je odobrio OSI.

izvor: opennet.ru

Dodajte komentar