Ua hoʻokuʻu ʻo Amazon i kahi hoʻokuʻu koʻikoʻi o Firecracker 1.0.0, kahi mea nānā mīkini virtual (VMM) i hoʻolālā ʻia e holo i nā mīkini virtual me ka liʻiliʻi o ke overhead. ʻO Firecracker kahi ʻāpana o ka papahana CrosVM i hoʻohana ʻia e Google e holo i nā noi. Linux и Android Ua hoʻomohala ʻia ʻo Firecracker e Amazon Web Services e hoʻomaikaʻi i ka hana a me ka pono o nā kahua AWS Lambda a me AWS Fargate. Ua kākau ʻia ʻo Firecracker ma Rust a ua laikini ʻia ma lalo o ka laikini Apache 2.0.
Hāʻawi ʻo Firecracker i nā mīkini virtual māmā (VMs), i kapa ʻia ʻo microVMs. Hoʻohana nā MicroVM i nā ʻenehana virtualization lako e pili ana i ka hypervisor KVM e hāʻawi i ka hoʻokaʻawale piha, me ka mālama ʻana i ka hana a me ka maʻalahi o nā ipu maʻamau. Loaʻa ka ʻōnaehana no nā hoʻolālā x86_64 a me ARM64 a ua hoʻāʻo ʻia ma nā CPU Intel Skylake, Intel Cascade Lake, AMD Zen2, a me ARM64 Neoverse N1. Hāʻawi ʻo Firecracker i nā mea hana no ka hoʻohui ʻana me nā ʻōnaehana hoʻokaʻawale ipu runtime e like me Kata Containers, Weaveworks Ignite, a me containerd (i hāʻawi ʻia e ka firecracker-containerd runtime).

Hana ʻia i loko nā mīkini uila Ua hoʻokaʻawale ʻia ke kaiapuni polokalamu a he mau ʻāpana liʻiliʻi wale nō i loaʻa. No ka mālama ʻana i ka hoʻomanaʻo, hoʻemi i ka manawa hoʻomaka, a hoʻomaikaʻi i ka palekana, holo kahi kernel i hoʻokaʻawale ʻia i loko o kēia mau kaiapuni. Linux (kākoʻo ʻia nā kernels 4.14 a me 5.10), kahi i kāpae ʻia ai nā mea pono ʻole a pau, me ka hana i hoʻemi ʻia a me ka wehe ʻana i ke kākoʻo hāmeʻa.
I ka holo ʻana me kahi kernel i wehe ʻia, ʻo ka hoʻohana ʻana i ka hoʻomanaʻo hou aʻe i hoʻohālikelike ʻia me kahi pahu he emi ma mua o 5 MB. ʻO ka latency mai ka hoʻomaka ʻana o ka microVM a hiki i ka hoʻokō ʻana o nā noi ua ʻōlelo ʻia mai 6 a 60 ms (12 ms ma ka awelika), e hiki ai ke hoʻoulu ʻia nā mīkini virtual hou ma kahi wikiwiki a hiki i 180 mau wahi i kekona ma kahi kikowaena me 36 mau cores CPU.
No ka hoʻokele ʻana i nā wahi virtual i ka wahi mea hoʻohana, holo kahi kaʻina hana hope, ʻo Virtual Machine Manager, e hāʻawi ana i kahi RESTful API e hoʻokō i nā hana e like me ka hoʻonohonoho ʻana, hoʻomaka, a me ka hoʻōki ʻana i nā microVM, ke koho ʻana i nā template CPU (C3 a i ʻole T2), ka hoʻoholo ʻana i ka helu o nā mea hana virtual (vCPU) a me ka nui o ka hoʻomanaʻo, ka hoʻohui ʻana i nā interfaces pūnaewele a me nā ʻāpana disk, ka hoʻonohonoho ʻana i nā palena bandwidth a me ka helu hana, a me ka hāʻawi ʻana i ka hoʻomanaʻo hou a me ka mana CPU inā he hemahema nā kumuwaiwai.
Ma waho aʻe o ka lawelawe ʻana ma ke ʻano he papa hoʻokaʻawale hohonu no nā ipu, kūpono hoʻi ʻo Firecracker no ke kākoʻo ʻana i nā ʻōnaehana FaaS (Function as a Service), e hāʻawi ana i kahi kumu hoʻohālike helu serverless kahi e hana ʻia ai ka hoʻomohala ʻana ma ka pae hoʻolako o kahi hoʻonohonoho o nā hana liʻiliʻi, pākahi, kēlā me kēia e hana i kahi hanana kikoʻī a ua hoʻolālā ʻia e hana kūʻokoʻa, me ka ʻole o ka nakinaki ʻia i kahi kaiapuni (stateless, ʻo ia hoʻi ke kūʻokoʻa ka hopena mai ke kūlana mua a me nā ʻike o ka ʻōnaehana faila). Hoʻomaka wale ʻia nā hana ke pono a hoʻopau koke ma hope o ka hana ʻana i ka hanana. Hoʻokipa ka paepae FaaS i nā hana i hoʻolako ʻia, hoʻokele iā lākou, a hoʻonui i nā kaiapuni e pono ai e hoʻokō iā lākou.
Eia kekahi, ua hoʻokuʻu ʻo Intel iā Cloud Hypervisor 21.0, kahi hypervisor i kūkulu ʻia ma luna o nā ʻāpana o ka papahana hui pū ʻo Rust-VMM, nona ka Intel, Alibaba, Amazon, Google, a me Red Hat. Ua kākau ʻia ʻo Rust-VMM ma ka ʻōlelo Rust a hiki ke hana i nā hypervisors hana kikoʻī. ʻO Cloud Hypervisor kekahi o ia ʻano hypervisor, e hāʻawi ana i kahi monitor mīkini virtual kiʻekiʻe (VMM) e holo ana ma luna o KVM a ua hoʻonohonoho pono ʻia no nā ukana hana ao. Loaʻa ke code o ka papahana ma lalo o ka laikini Apache 2.0.
Ke kālele nei ʻo Cloud Hypervisor i ka holo ʻana i nā hoʻolaha hou Linux Ke hoʻohana nei i nā mea hana paravirtualized e pili ana iā Virtio. ʻO nā pahuhopu nui e pili ana i ka pane wikiwiki, ka hoʻohana ʻana i ka hoʻomanaʻo haʻahaʻa, ka hana kiʻekiʻe, ka hoʻonohonoho maʻalahi, a me nā vectors hoʻouka i hoʻemi ʻia. Ua hoʻemi ʻia ke kākoʻo Emulation, me ka hoʻoikaika ʻana i ka paravirtualization. ʻO nā hoʻolālā i kākoʻo ʻia ʻo x86_64 a me AArch64. ʻO nā kūkulu 64-bit wale nō i kākoʻo ʻia i kēia manawa no nā malihini. LinuxHana ʻia nā hoʻonohonoho CPU, hoʻomanaʻo, PCI, a me NVDIMM i ka wā o ke kaʻina hana kūkulu. Ka neʻe ʻana o nā mīkini virtual ma waena nā kikowaena.
Hoʻolauna ka mana hou o Cloud Hypervisor i ka neʻe ola kūloko kūpono, hiki ke hoʻohana ʻia e hoʻonui i nā wahi ma ka lele (Live Upgrade). Hoʻopau ke ʻano hou i nā hoʻohālikelike hoʻomanaʻo ma waena o nā wahi kumu a me nā wahi i manaʻo ʻia, e hōʻemi ana i ka manawa hoʻonui ma ka lele mai 3 kekona a i 50 ms. ʻO ka kernel i ʻōlelo ʻia Linux 5.15 (loaʻa iā 5.14 nā pilikia me ka virtio-net).
Source: opennet.ru
