Përditëso te hipervizorët Intel Cloud Hypervisor 0.3 dhe Amazon Firecracker 0.19 të shkruar në Rust

Intel botuar versioni i ri i hipervizorit Hypervisor Cloud 0.3. Hipervizori është ndërtuar mbi komponentë
projekt i përbashkët Rust-VMM, në të cilin përveç Intel-it marrin pjesë edhe Alibaba, Amazon, Google dhe Red Hat. Rust-VMM është shkruar në gjuhën Rust dhe ju lejon të krijoni hipervizorë specifikë për detyrat. Cloud Hypervisor është një hipervisor i tillë që ofron një monitor të makinës virtuale të nivelit të lartë (VMM) që funksionon në krye të KVM dhe është i optimizuar për detyrat vendase të cloud. Kodi i projektit në dispozicion licencuar sipas Apache 2.0.

Cloud Hypervisor është i fokusuar në ekzekutimin e shpërndarjeve moderne Linux duke përdorur pajisje të paravirtualizuara të bazuara në virtio. Ndër objektivat kryesore të përmendura janë: reagimi i lartë, konsumi i ulët i memories, performanca e lartë, konfigurimi i thjeshtuar dhe reduktimi i vektorëve të mundshëm të sulmit.

Mbështetja e emulimit mbahet në minimum dhe fokusi është te paravirtualizimi. Aktualisht mbështeten vetëm sistemet x86_64, por është planifikuar mbështetja e AArch64. Për sistemet e ftuar, aktualisht mbështeten vetëm ndërtimet 64-bit të Linux. CPU, memoria, PCI dhe NVDIMM janë konfiguruar në fazën e montimit. Është e mundur të migroni makina virtuale midis serverëve.

Në versionin e ri:

  • Puna vazhdoi për zhvendosjen e I/O të paravirtualizuar në procese të veçanta. Aftësia për të përdorur backend-et është shtuar për të bashkëvepruar me pajisjet e bllokut vhost-user-blk. Ndryshimi ju lejon të lidhni pajisjet e bllokimit të bazuara në modulin e përdoruesit vhost me Cloud Hypervisor, si p.sh. SPDK, si mbështetëse për ruajtjen e paravirtualizuar;
  • Mbështetje për lëvizjen e operacioneve të rrjetit në backend, e prezantuar në versionin e fundit vhost-user-net, i zgjeruar me një backend të ri të bazuar në një drejtues rrjeti virtual TAP. Backend është shkruar në Rust dhe tani përdoret në Cloud Hypervisor si arkitektura kryesore e rrjetit të para-virtualizuar;
  • Për të rritur efikasitetin dhe sigurinë e komunikimeve midis mjedisit pritës dhe sistemit të ftuar, propozohet një zbatim hibrid i prizave me adresim AF_VSOCK (priza rrjeti virtual), që funksionon përmes virtio. Zbatimi bazohet në zhvillimet e projektit Fishekzjarr, zhvilluar nga Amazon. VSOCK ju lejon të përdorni API standarde POSIX Sockets për ndërveprimin midis aplikacioneve në anën e mysafirit dhe hostit, gjë që e bën të lehtë përshtatjen e programeve të zakonshme të rrjetit për një ndërveprim të tillë dhe zbatimin e ndërveprimit të disa programeve të klientit me një aplikacion serveri;
  • Ofroi mbështetje fillestare për API-në e menaxhimit duke përdorur protokollin HTTP. Në të ardhmen, kjo API do të bëjë të mundur fillimin e operacioneve asinkrone në sistemet e vizitorëve, të tilla si burimet e kyçjes së nxehtë dhe mjediset migruese;
  • U shtua një shtresë me një zbatim transporti të bazuar në virtio MMIO (Memory mapped virtio), i cili mund të përdoret për të krijuar sisteme minimaliste të ftuar që nuk kërkojnë emulim të autobusit PCI;
  • Si pjesë e iniciativës për të zgjeruar mbështetjen për funksionimin e sistemeve të vizitorëve të ndërlidhur, Cloud Hypervisor ka shtuar aftësinë për të përcjellë pajisjet e paravirtualizuara IOMMU përmes virtio, gjë që përmirëson sigurinë e përcjelljes së vendosur dhe të drejtpërdrejtë të pajisjeve.
  • Ofroi mbështetje për Ubuntu 19.10;
  • U shtua aftësia për të ekzekutuar sisteme të ftuar me më shumë se 64 GB RAM.

Për më tepër, mund të vërehet numri i ri ngjitur zhvilluar monitor i makinës virtuale Fishekzjarr, i shkruar gjithashtu në Rust, bazuar në Rust-VMM dhe funksionon në krye të KVM. Firecracker është një pirun i projektit CrosVM, e përdorur nga Google për të nisur aplikacionet Linux и android në ChromeOS. Firecracker po zhvillohet nga Amazon Web Services për të përmirësuar performancën dhe efikasitetin e platformave AWS Lambda dhe AWS Fargate.

Platforma është krijuar për të drejtuar makina virtuale me shpenzime minimale dhe ofron mjete për krijimin dhe menaxhimin e mjediseve dhe shërbimeve të izoluara të ndërtuara duke përdorur një model zhvillimi pa server (funksion si shërbim). Firecracker ofron makineri virtuale të lehta, të quajtura microVM, që përdorin teknologji të virtualizimit të harduerit për të siguruar izolim të plotë duke ofruar performancën dhe fleksibilitetin e kontejnerëve tradicionalë. Për shembull, kur përdorni Firecracker, koha nga momenti i lëshimit të microVM deri në fillimin e ekzekutimit të aplikacionit nuk i kalon 125ms, gjë që ju lejon të nisni makina të reja virtuale me një intensitet deri në 150 mjedise në sekondë.

Publikimi i ri i Firecracker shton një mënyrë funksionimi pa lëshuar mbajtësin API ("—no-api"), duke kufizuar mjedisin vetëm në cilësimet e koduara në skedarin e konfigurimit. Konfigurimi statik specifikohet nëpërmjet opsionit “--config-file” dhe përcaktohet në formatin JSON. Nga opsionet e linjës së komandës, është shtuar edhe mbështetja për ndarësin "—", flamujt e specifikuar pas të cilit kalohen përgjatë zinxhirit pa përpunim.

Amazon, e cila zhvillon Firecracker, gjithashtu i shpallur për ofrimin e sponsorizimit për zhvilluesit e gjuhës programuese Rust. Vihet re se Rust përdoret gjithnjë e më shumë në projektet e kompanisë dhe zhvillimet mbi të tashmë janë zbatuar në shërbime të tilla si Lambda, EC2 dhe S3. Amazon i ka ofruar projektit Rust infrastrukturën për të ruajtur lëshimet dhe ndërtimet në S3, për të kryer teste regresioni në EC2 dhe për të mbajtur një faqe docs.rs me dokumentacion për të gjitha paketat nga depoja crates.io.

Amazon gjithashtu paraqitur programi Kredi promovuese AWS, ku projektet me burim të hapur mund të kenë akses falas në shërbimet AWS që mund të përdoren për ruajtjen e burimeve, ndërtimin, integrimin e vazhdueshëm dhe testimin. Ndër projektet e miratuara tashmë për pjesëmarrje në program, përveç Rust, u vunë re AdoptOpenJDK, Maven Central, Kubernetes, Prometheus, Envoy dhe Julia. Dorëzimet pranohen nga çdo projekt me kod të hapur i dorëzuar sipas licencave të miratuara nga OSI.

Burimi: opennet.ru

Shto një koment