Amazon je objavil virtualizacijski sistem Firecracker 1.0

Amazon je objavil pomembno izdajo svojega Virtual Machine Monitor (VMM), Firecracker 1.0.0, zasnovanega za zagon virtualnih strojev z minimalnimi stroški. Firecracker je razcep projekta CrosVM, ki ga Google uporablja za izvajanje aplikacij Linux in Android v sistemu ChromeOS. Firecracker razvija Amazon Web Services za izboljšanje zmogljivosti in učinkovitosti platform AWS Lambda in AWS Fargate. Koda Firecracker je napisana v Rust in je licencirana pod licenco Apache 2.0.

Firecracker ponuja lahke virtualne stroje, imenovane microVM. Za popolno izolacijo microVM so uporabljene tehnologije strojne virtualizacije, ki temeljijo na hipervizorju KVM, hkrati pa sta zagotovljena zmogljivost in prilagodljivost na ravni običajnih vsebnikov. Sistem je na voljo za arhitekturi x86_64 in ARM64 in je bil preizkušen na procesorjih iz družine Intel Skylake, Intel Cascade Lake, AMD Zen2 in ARM64 Neoverse N1. Na voljo so orodja za integracijo Firecrackerja v zadrževalne sisteme vsebnikov med izvajanjem, kot so Kata Containers, Weaveworks Ignite in kontejner (zagotavlja runtime firecracker-containerd).

Amazon je objavil virtualizacijski sistem Firecracker 1.0

Programsko okolje, ki se izvaja znotraj virtualnih strojev, je očiščeno in vsebuje le minimalen nabor komponent. Za varčevanje s pomnilnikom, skrajšanje časa zagona in povečanje varnosti v okoljih je zagnano okrnjeno jedro Linuxa (podprti sta jedri 4.14 in 5.10), iz katerega je izključeno vse nepotrebno, vključno z zmanjšano funkcionalnostjo in odstranjeno podporo za naprave.

Pri izvajanju s skrajšanim jedrom je dodatna poraba pomnilnika v primerjavi z vsebnikom manjša od 5 MB. Zakasnitev od trenutka zagona microVM do začetka izvajanja aplikacije naj bi znašala od 6 do 60 ms (povprečno 12 ms), kar omogoča ustvarjanje novih virtualnih strojev z intenzivnostjo do 180 okolij na sekundo na gostitelju. s 36 CPU jedri.

Za upravljanje navideznih okolij v uporabniškem prostoru teče proces v ozadju Virtual Machine Manager, ki zagotavlja RESTful API, ki izvaja funkcije, kot so konfiguriranje, zagon in zaustavitev microVM, izbiranje predlog CPU (C3 ali T2), določanje števila navideznih procesorjev (vCPU) in velikost pomnilnika, dodajanje omrežnih vmesnikov in diskovnih particij, nastavitev omejitev prepustnosti in intenzivnosti operacij, zagotavljanje dodatnega pomnilnika in CPU moči v primeru nezadostnih virov.

Poleg tega, da se uporablja kot globlji izolacijski sloj za vsebnike, je Firecracker primeren tudi za napajanje sistemov FaaS (Function as a Service), ki ponujajo računalniški model brez strežnika, v katerem se razvoj izvaja v fazi priprave niza majhnih posameznih funkcije, od katerih vsaka obravnava določen dogodek in je zasnovana za izolirano delovanje brez sklicevanja na okolje (brez stanja, rezultat ni odvisen od prejšnjega stanja in vsebine datotečnega sistema). Funkcije se zaženejo šele, ko se pojavi potreba in takoj po obdelavi dogodka zaključijo svoje delo. Platforma FaaS sama gosti pripravljene funkcije, organizira upravljanje in zagotavlja skaliranje okolij, potrebnih za izvajanje pripravljenih funkcij.

Poleg tega lahko omenimo objavo Intelovega hipervizorja Cloud Hypervisor 21.0, zgrajenega na podlagi komponent skupnega projekta Rust-VMM, v katerem poleg Intela sodelujejo tudi Alibaba, Amazon, Google in Red Hat. Rust-VMM je napisan v jeziku Rust in vam omogoča ustvarjanje hipervizorjev, specifičnih za opravila. Cloud Hypervisor je eden takšnih hipervizorjev, ki zagotavlja nadzornik navideznega stroja na visoki ravni (VMM), ki deluje na vrhu KVM in je optimiziran za naloge, ki izvirajo iz oblaka. Koda projekta je na voljo pod licenco Apache 2.0.

Cloud Hypervisor je osredotočen na izvajanje sodobnih distribucij Linuxa z uporabo paravirtualiziranih naprav na osnovi virtio. Med ključnimi cilji so navedeni: visoka odzivnost, nizka poraba pomnilnika, visoka zmogljivost, poenostavljena konfiguracija in zmanjšanje možnih vektorjev napadov. Podpora za emulacijo je minimalna, poudarek pa je na paravirtualizaciji. Podprti sta arhitekturi x86_64 in AArch64. Za sisteme za goste so trenutno podprte samo 64-bitne različice Linuxa. CPE, pomnilnik, PCI in NVDIMM so konfigurirani v fazi sestavljanja. Možna je selitev virtualnih strojev med strežniki.

Nova različica Cloud Hypervisorja vključuje možnost izvajanja učinkovite lokalne migracije v živo, ki jo je mogoče uporabiti za sprotno posodabljanje okolij (Live Upgrade). Nov način odlikuje onemogočanje primerjave pomnilnika izvornega in ciljnega okolja, kar skrajša čas sprotne posodobitve s 3 sekund na 50 ms. Priporočeno jedro Linuxa je 5.15 (5.14 ima težave z virtio-net).

Vir: opennet.ru

Dodaj komentar