Amazon har udgivet Firecracker 1.0 virtualiseringssystem

Amazon har udgivet en betydelig udgivelse af sin Virtual Machine Monitor (VMM), Firecracker 1.0.0, designet til at køre virtuelle maskiner med minimal overhead. Firecracker er en forgrening af CrosVM-projektet, der bruges af Google til at køre Linux- og Android-applikationer på ChromeOS. Firecracker udvikles af Amazon Web Services for at forbedre ydeevnen og effektiviteten af ​​AWS Lambda- og AWS Fargate-platformene. Firecracker-koden er skrevet i Rust og er licenseret under Apache 2.0-licensen.

Firecracker tilbyder lette virtuelle maskiner kaldet microVM'er. Til komplet microVM-isolering bruges hardware-virtualiseringsteknologier baseret på KVM-hypervisoren, men samtidig leveres ydeevnen og fleksibiliteten på niveau med konventionelle containere. Systemet er tilgængeligt til x86_64 og ARM64 arkitekturer og er blevet testet på CPU'er fra Intel Skylake, Intel Cascade Lake, AMD Zen2 og ARM64 Neoverse N1 familien. Værktøjer leveres til at integrere Firecracker i runtime containerindeslutningssystemer såsom Kata Containers, Weaveworks Ignite og containerd (leveret af runtime firecracker-containerd).

Amazon har udgivet Firecracker 1.0 virtualiseringssystem

Softwaremiljøet, der kører inde i virtuelle maskiner, er strippet ned og indeholder kun et minimalt sæt komponenter. For at spare hukommelse, reducere opstartstiden og øge sikkerheden i miljøer lanceres en nedstribet Linux-kerne (kerne 4.14 og 5.10 understøttes), hvorfra alt unødvendigt er udelukket, inklusive reduceret funktionalitet og fjernet enhedsunderstøttelse.

Når du kører med en strippet kerne, er det ekstra hukommelsesforbrug i forhold til en container mindre end 5 MB. Forsinkelsen fra det øjeblik, microVM lanceres til starten af ​​applikationsudførelse er angivet til at variere fra 6 til 60 ms (gennemsnit 12 ms), hvilket tillader oprettelse af nye virtuelle maskiner med en intensitet på op til 180 miljøer pr. sekund på en vært med 36 CPU-kerner.

For at administrere virtuelle miljøer i brugerrummet kører baggrundsprocessen Virtual Machine Manager, hvilket giver en RESTful API, der implementerer funktioner såsom konfiguration, start og stop af microVM, valg af CPU-skabeloner (C3 eller T2), bestemmelse af antallet af virtuelle processorer (vCPU) og hukommelsesstørrelse, tilføjelse af netværksgrænseflader og diskpartitioner, sætter grænser for gennemløb og intensitet af operationer, giver ekstra hukommelse og CPU-kraft i tilfælde af utilstrækkelige ressourcer.

Udover at blive brugt som et dybere isoleringslag til containere, er Firecracker også velegnet til at drive FaaS (Function as a Service) systemer, som tilbyder en serverløs computermodel, hvor udviklingen udføres på det stadie, hvor et sæt små individer forberedes. funktioner, som hver håndterer en specifik hændelse og er designet til isoleret drift uden reference til miljøet (statløst, resultatet afhænger ikke af den tidligere tilstand og indholdet af filsystemet). Funktioner lanceres kun, når behovet opstår, og umiddelbart efter behandlingen af ​​begivenheden afslutter de deres arbejde. Selve FaaS-platformen er vært for forberedte funktioner, organiserer ledelsen og sikrer skalering af de miljøer, der kræves for at udføre forberedte funktioner.

Derudover kan vi bemærke Intels udgivelse af Cloud Hypervisor 21.0-hypervisoren, bygget på basis af komponenter fra det fælles Rust-VMM-projekt, hvori udover Intel også Alibaba, Amazon, Google og Red Hat deltager. Rust-VMM er skrevet på Rust-sproget og giver dig mulighed for at oprette opgavespecifikke hypervisorer. Cloud Hypervisor er en sådan hypervisor, der giver en virtuel maskinemonitor på højt niveau (VMM), der kører oven på KVM og er optimeret til cloud-native opgaver. Projektkoden er tilgængelig under Apache 2.0-licensen.

Cloud Hypervisor er fokuseret på at køre moderne Linux-distributioner ved hjælp af virtio-baserede paravirtualiserede enheder. Blandt de nævnte nøglemål er: høj reaktionsevne, lavt hukommelsesforbrug, høj ydeevne, forenklet konfiguration og reduktion af mulige angrebsvektorer. Emuleringsstøtte er holdt på et minimum, og fokus er på paravirtualisering. x86_64- og AArch64-arkitekturer understøttes. For gæstesystemer understøttes i øjeblikket kun 64-bit builds af Linux. CPU'en, hukommelsen, PCI og NVDIMM konfigureres på monteringsstadiet. Det er muligt at migrere virtuelle maskiner mellem servere.

Den nye version af Cloud Hypervisor inkluderer muligheden for at udføre effektiv lokal live-migrering, som kan bruges til at opdatere miljøer på farten (Live Upgrade). Den nye tilstand er kendetegnet ved at deaktivere hukommelsessammenligning af kilde- og målmiljøer, hvilket reducerer tiden for en on-the-fly opdateringsoperation fra 3 sekunder til 50 ms. Den anbefalede Linux-kerne er 5.15 (5.14 har problemer med virtio-net).

Kilde: opennet.ru

Tilføj en kommentar