ProHoster > Blog > talafou initaneti > Faʻafou ile Intel Cloud Hypervisor 0.3 ma Amazon Firecracker 0.19 hypervisors tusia ile Rust
Faʻafou ile Intel Cloud Hypervisor 0.3 ma Amazon Firecracker 0.19 hypervisors tusia ile Rust
Intel lomia lomiga fou o le hypervisor Cloud Hypervisor 0.3. O le hypervisor e fausia i luga o vaega
galuega fa'atasi Ele-VMM, lea, e faaopoopo atu i Intel, Alibaba, Amazon, Google ma Red Hat e auai foi. Ua tusia le Rust-VMM i le gagana Rust ma fa'atagaina oe e faia ni fa'atonuga fa'apitoa mo galuega. Cloud Hypervisor o se tasi lea hypervisor e maua ai se mata'itū masini mata'itū maualuga (VMM) o lo'o tamo'e ile pito i luga ole KVM ma fa'amalieina mo galuega fa'aao. Poloketi code avanoa laiseneina i lalo ole Apache 2.0.
O loʻo taulaʻi le Cloud Hypervisor i le faʻaogaina o faʻasalalauga Linux faʻaonaponei e faʻaaoga ai masini faʻapipiʻi virtio. Faatasi ai ma sini autu o loʻo taʻua e: maualuga le tali atu, maualalo le faʻaogaina o le mafaufau, maualuga le faʻatinoga, faʻafaigofie le faʻatulagaina ma le faʻaitiitia o osofaʻiga osofaʻi.
E fa'atumauina le lagolago fa'ata'ita'iga ma fa'atatau i le fa'ata'ita'iga. I le taimi nei na'o le x86_64 faiga e lagolagoina, ae o le AArch64 lagolago ua fuafuaina. Mo faiga fa'apitoa, na'o le 64-bit fausia o Linux o lo'o lagolagoina nei. O le PPU, manatua, PCI ma le NVDIMM o loʻo faʻatulagaina i le tulaga faʻapotopotoga. E mafai ona femalaga'i masini va'aia i le va o 'au'aunaga.
I le lomiga fou:
Sa fa'aauau pea galuega ile fa'agaoioi ole I/O fa'aparavirtualized e tu'ueseese faiga. Le mafai ona faʻaoga pito i tua ua faʻaopoopoina e fegalegaleai ma masini poloka vhost-user-blk. O le suiga e mafai ai ona e faʻafesoʻotaʻi poloka poloka e faʻavae i luga o le vhost-user module i Cloud Hypervisor, pei ole SPDK, e fai ma pito i tua mo le teuina o paravirtualized;
Lagolago mo le fesiitaiga o fesoʻotaʻiga fesoʻotaʻiga i tua, faʻalauiloaina i le faʻasalalauga mulimuli vhost-user-net, faʻalauteleina ma se backend fou e faʻavae i luga o se avetaʻavale fesoʻotaiga vavave paipa. O le pito i tua o loʻo tusia i le Rust ma o loʻo faʻaaogaina nei i le Cloud Hypervisor e avea ma ata autu o fesoʻotaʻiga para-virtualized;
Ina ia faʻateleina le lelei ma le saogalemu o fesoʻotaʻiga i le va o le siʻosiʻomaga talimalo ma le faiga faʻapitoa, o le faʻaogaina o le faʻaogaina o sockets ma le AF_VSOCK addressing (virtual network sockets), galue e ala i virtio, ua faʻatulagaina. O le faʻatinoga e faʻavae i luga o atinaʻe o le poloketi Faifau, atiina ae e Amazon. VSOCK e faʻatagaina oe e faʻaogaina le POSIX Sockets API mo fegalegaleaiga i le va o talosaga i luga o le malo ma le talimalo itu, lea e faigofie ai ona faʻafetaui polokalame fesoʻotaʻiga masani mo ia fegalegaleaiga ma faʻatino le fegalegaleaiga o le tele o polokalama o tagata faʻatau ma le tasi le talosaga server;
Tuuina atu le lagolago muamua mo le API pulega e faʻaaoga ai le HTTP protocol. I le lumanaʻi, o lenei API o le a mafai ai ona amata faʻagaioiga asynchronous i luga o faiga faʻapitoa, e pei o punaoa vevela-plugging ma siosiomaga femalagaaʻi;
Faʻaopoopoina se laulau faʻatasi ai ma se faʻatinoga o felauaiga e faʻavae i luga o virtio MMIO (Memory mapped virtio), lea e mafai ona faʻaaogaina e fatuina ai faiga faʻapitoa faʻapitoa e le manaʻomia ai le faʻataʻitaʻiina o pasi PCI;
I le avea ai o se vaega o le fuafuaga e faʻalauteleina le lagolago mo le faʻaogaina o faiga faʻapitoa faʻapitoa, ua faʻaopoopoina e Cloud Hypervisor le tomai e faʻasalalau atu ai masini IOMMU e ala i virtio, lea e faʻaleleia ai le saogalemu o le faʻaogaina ma tuusaʻo o masini.
Tuuina atu le lagolago mo Ubuntu 19.10;
Faʻaopoopo le gafatia e faʻatautaia ai faiga faʻapitoa ma sili atu i le 64 GB o le RAM.
E le gata i lea, e mafai ona matauina mataupu fou tuaoi atiina ae mata'itu masini virtual Faifau, tusia foi i Rust, faʻavae i luga o Rust-VMM ma tamoʻe i luga ole KVM. O le mea fa'apipi'i o se tui o le poloketi CrosVM, fa'aaoga e Google e fa'alauiloa ai talosaga Linux и Android i le ChromeOS. O lo'o atia'e le Firecracker e Amazon Web Services e fa'aleleia ai le fa'atinoga ma le lelei o fa'avae AWS Lambda ma AWS Fargate.
O le faʻavae ua mamanuina e faʻatautaia ai masini faʻapitoa e laʻititi laʻititi ma tuʻuina atu meafaigaluega mo le fatuina ma le puleaina o siosiomaga tuʻufua ma auaunaga e fausia e faʻaaoga ai se faʻataʻitaʻiga e leai se server (galuega o se auaunaga). O le Firecracker e ofoina atu masini mama mama, e taʻua o microVMs, o loʻo faʻaogaina masini faʻaogaina tekinolosi e tuʻuina atu ai le faʻaesea atoatoa aʻo tuʻuina atu le faʻatinoga ma le fetuutuunai o pusa masani. Mo se faʻataʻitaʻiga, pe a faʻaaogaina Firecracker, o le taimi mai le taimi e faʻalauiloa ai le microVM i le amataga o le faʻatinoina o le talosaga e le sili atu i le 125ms, lea e mafai ai ona e faʻalauiloa masini fou ma se malosi e oʻo atu i le 150 siosiomaga i le sekone.
O le faʻasalalauga fou o Firecracker e faʻaopoopoina ai se faiga faʻaoga e aunoa ma le faʻalauiloaina o le API faʻatautaia ("—no-api"), faʻatapulaʻaina le siosiomaga i naʻo faʻatonuga faʻamaonia i le faila faʻatulagaina. O le faʻatulagaina faʻamautu e faʻamaonia e ala i le "--config-file" filifiliga ma faʻamatalaina i le JSON format. Mai le faʻatonuga o filifiliga, lagolago mo le "-" separator ua faʻaopoopoina foi, o fuʻa faʻamaonia pe a maeʻa ona pasia i luga o le filifili e aunoa ma se gaioiga.
Amazon, lea e atiina ae Firecracker, foi faasilasila i le tu'uina atu o le lagolago i le au atia'e o le gagana polokalame Rust. O loʻo maitauina o le Rust ua faʻateleina le faʻaaogaina i galuega a le kamupani ma atinaʻe i luga ua uma ona faʻatinoina i auaunaga e pei o Lambda, EC2 ma S3. Ua saunia e Amazon le poloketi Rust ma mea tetele e teu ai faʻasalalauga ma fausia i le S3, faʻataʻitaʻiina suʻega faʻasolosolo i le EC2, ma tausia se docs.rs site ma faʻamaumauga mo afifi uma mai le crates.io repository.
Amazon foi faʻalauiloa le polokalama AWS Promotional Credit, lea e mafai ai e poloketi faʻapitoa ona maua avanoa avanoa i auaunaga AWS e mafai ona faʻaogaina mo le teuina o punaoa, fausiaina, faʻaauau le tuʻufaʻatasia, ma suʻega. Faatasi ai ma poloketi ua uma ona faʻamaonia mo le auai i le polokalame, faʻaopoopo i le Rust, AdoptOpenJDK, Maven Central, Kubernetes, Prometheus, Envoy ma Julia na matauina. E talia fa'amatalaga mai so'o se galuega fa'alauiloa e tu'uina atu i lalo ole laisene fa'atagaina e le OSI.