Update foar Intel Cloud Hypervisor 0.3 en Amazon Firecracker 0.19 skreaun yn Rust

Intel publisearre nije ferzje fan hypervisor Cloud Hypervisor 0.3. De hypervisor is boud op komponinten
mienskiplik projekt Rust-VMM, dêr't, neist Intel, ek Alibaba, Amazon, Google en Red Hat meidwaan. Rust-VMM is skreaun yn 'e Rust-taal en lit jo taakspesifike hypervisors oanmeitsje. Cloud Hypervisor is ien sa'n hypervisor dy't in hege nivo firtuele masinemonitor (VMM) leveret dy't boppe op KVM rint en optimalisearre is foar cloud-native taken. Projektkoade beskikber lisinsje ûnder Apache 2.0.

Cloud Hypervisor is rjochte op it útfieren fan moderne Linux-distribúsjes mei virtio-basearre paravirtualisearre apparaten. Under de neamde kaaidoelen binne: hege responsiviteit, leech ûnthâldferbrûk, hege prestaasjes, ferienfâldige konfiguraasje en reduksje fan mooglike oanfalvektoren.

Emulaasje-stipe wurdt op in minimum beheind en de fokus leit op paravirtualisaasje. Op it stuit wurde allinich x86_64-systemen stipe, mar AArch64-stipe is pland. Foar gastsystemen wurde op it stuit allinich 64-bit builds fan Linux stipe. De CPU, ûnthâld, PCI en NVDIMM wurde konfigureare op it assemblagestadium. It is mooglik om firtuele masines te migrearjen tusken servers.

Yn de nije ferzje:

  • It wurk gie troch oan it ferpleatsen fan paravirtualisearre I/O nei aparte prosessen. De mooglikheid om backends te brûken is tafoege om te ynteraksje mei blokapparaten vhost-brûker-blk. De wiziging lit jo blokapparaten ferbine op basis fan 'e vhost-brûkersmodule oan Cloud Hypervisor, lykas SPDK, as backends foar paravirtualisearre opslach;
  • Stipe foar it ferpleatsen fan netwurkoperaasjes nei backends, yntrodusearre yn 'e lêste release vhost-brûker-net, útwreide mei in nije backend basearre op in firtuele netwurk stjoerprogramma TAP. De efterkant is skreaun yn Rust en wurdt no brûkt yn Cloud Hypervisor as de wichtichste para-virtualisearre netwurkarsjitektuer;
  • Om de effisjinsje en feiligens fan kommunikaasje tusken de hostomjouwing en it gastsysteem te fergrutsjen, wurdt in hybride ymplemintaasje fan sockets mei AF_VSOCK-adressering (firtuele netwurk-sockets), dy't troch virtio wurkje, foarsteld. De útfiering is basearre op de ûntwikkelingen fan it projekt fjoerwurk, ûntwikkele troch Amazon. VSOCK kinne jo gebrûk meitsje fan de standert POSIX Sockets API foar ynteraksje tusken applikaasjes op de gast en host kanten, dat makket it maklik in oanpasse gewoane netwurk programma foar sokke ynteraksje en útfiere de ynteraksje fan ferskate client programma mei ien tsjinner applikaasje;
  • Inisjele stipe levere foar de behear API mei it HTTP-protokol. Yn 'e takomst sil dizze API it mooglik meitsje om asynchrone operaasjes op gastsystemen te begjinnen, lykas hot-plugging-boarnen en migrearjende omjouwings;
  • In laach tafoege mei in ferfier ymplemintaasje basearre op virtio MMIO (Memory mapd virtio), dat kin brûkt wurde om te meitsjen minimalistyske gast systemen dy't net nedich PCI bus emulaasje;
  • As ûnderdiel fan it inisjatyf om stipe út te wreidzjen foar it útfieren fan nestede gastsystemen, hat Cloud Hypervisor de mooglikheid tafoege om paravirtualisearre IOMMU-apparaten troch virtio troch te stjoeren, wat de feiligens fan nestede en direkte trochstjoere fan apparaten ferbettert.
  • Stipe foar Ubuntu 19.10 levere;
  • De mooglikheid tafoege om gastsystemen út te fieren mei mear as 64 GB RAM.

Derneist kin it opmurken wurde nije útjefte neistlizzend ûntwikkele firtuele masine monitor fjoerwurk, ek skreaun yn Rust, basearre op Rust-VMM en rint boppe op KVM. Firecracker is in foarke fan it projekt CrosVM, brûkt troch Google om applikaasjes te starten linux и Android yn ChromeOS. Firecracker wurdt ûntwikkele troch Amazon Web Services om de prestaasjes en effisjinsje fan 'e AWS Lambda- en AWS Fargate-platfoarms te ferbetterjen.

It platfoarm is ûntworpen om firtuele masines út te fieren mei minimale overhead en leveret ark foar it meitsjen en behearen fan isolearre omjouwings en tsjinsten boud mei in serverless ûntwikkelingsmodel (funksje as in tsjinst). Firecracker biedt lichtgewicht firtuele masines, neamd microVM's, dy't hardware-virtualisaasjetechnologyen brûke om folsleine isolaasje te leverjen, wylst se de prestaasjes en fleksibiliteit leverje fan tradisjonele konteners. Bygelyks, by it brûken fan Firecracker, is de tiid fan it momint dat microVM wurdt lansearre oant it begjin fan útfiering fan applikaasjes net mear as 125ms, wêrtroch jo nije firtuele masines kinne starte mei in yntensiteit fan maksimaal 150 omjouwings per sekonde.

De nije release fan Firecracker foeget in modus fan operaasje ta sûnder de API-hanterer te starten ("-no-api"), en beheint de omjouwing allinich foar de ynstellingen dy't hurd kodearre binne yn it konfiguraasjetriem. De statyske konfiguraasje wurdt oantsjutte fia de opsje "--config-file" en wurdt definiearre yn JSON-formaat. Fanút de kommandorigelopsjes is ek stipe foar de "—" skieding tafoege, de oantsjutte flaggen wêrnei't de keatling sûnder ferwurking trochjûn wurdt.

Amazon, dy't Firecracker ûntwikkelet, ek oankundige oer it jaan fan sponsoring oan de ûntwikkelders fan 'e Rust programmeartaal. It wurdt opmurken dat Rust wurdt hieltyd mear brûkt yn it bedriuw syn projekten en ûntwikkelingen op it binne al útfierd yn tsjinsten lykas Lambda, EC2 en S3. Amazon hat it Rust-projekt de ynfrastruktuer foarsjoen om releases en builds yn S3 op te slaan, regressiontests yn EC2 út te fieren, en in docs.rs-side te behâlden mei dokumintaasje foar alle pakketten fan it crates.io-repository.

Amazon ek yntrodusearre it programma AWS Promotional Credit, wêr't iepen boarne-projekten fergees tagong krije kinne ta AWS-tsjinsten dy't brûkt wurde kinne foar opslach fan boarnen, bouwen, trochgeande yntegraasje en testen. Under de projekten dy't al goedkard binne foar dielname oan it programma, neist Rust, waarden AdoptOpenJDK, Maven Central, Kubernetes, Prometheus, Envoy en Julia opmurken. Ynstjoerings wurde akseptearre fan elk iepen boarne projekt levere ûnder OSI-goedkard lisinsjes.

Boarne: opennet.ru

Add a comment