TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Firecracker: Lightweight Virtualization for Serverless Applications

141 点作者 andrioni超过 5 年前

7 条评论

steveklabnik超过 5 年前
Firecracker is a very interesting project.<p>It&#x27;s covered in the paper, but the origins are the &quot;crosvm&quot; project at Google, which is used in ChromeOS. Firecracker started as a fork of crosvm, removed a bunch of code they didn&#x27;t need, and of course adding their own.<p>But rather than just fork, they&#x27;ve consolidated the shared parts into the &quot;rust-vmm&quot; project: <a href="https:&#x2F;&#x2F;github.com&#x2F;rust-vmm&#x2F;community" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;rust-vmm&#x2F;community</a><p>&gt; The rust-vmm project is organized as a shared effort, shared ownership open-source project that includes (so far) contributors from Alibaba, AWS, Cloud Base, Crowdstrike, Intel, Google, Red Hat as well as individual contributors.<p>This has allowed other similar tech to grow, like <a href="https:&#x2F;&#x2F;github.com&#x2F;cloud-hypervisor&#x2F;cloud-hypervisor" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;cloud-hypervisor&#x2F;cloud-hypervisor</a>, which seems to be the Intel project mentioned in the above sentence.
评论 #22361770 未加载
bonzini超过 5 年前
The comparison with QEMU is a bit disingenuous. The number of lines of code in a given binary is much less than 1.4 million, which is the total for all the architectures that QEMU supports (actually it&#x27;s closer to 2 million). It is also possible to configure out a lot of the code and libraries. A default build is around 6-700.000 lines of code, and it is possible to build reduced versions that tally less than 300.000 lines just by tweaking a configuration file with the list of included devices (which was done for the experiments in the paper). The NEMU project mentioned in the paper is inactive exactly because it was a dead end: it was possible to achieve all their goals directly in QEMU without the need for a fork.<p>Likewise, the number of syscalls in QEMU (270) is quoted from another paper but likely refers not to QEMU used as a VMM, but rather to the so called &quot;user-mode emulation&quot; that runs foreign Linux binaries (and which, by its very nature, invokes pretty much all Linux syscalls including quite a few obsolete ones).<p>It would be interesting to have more information on the configuration they use for QEMU, especially whether they are enabling PCI and ACPI. Version 4.2 of QEMU (the version they used) has a trimmed virtual machine type that was admittedly inspired by Firecracker and actually boots even faster than Firecracker, or at least in the noise. [1] The code specific to this machine type is only 500 lines. Also since that release QEMU and qboot _are_ actually able to boot uncompressed kernels using the PVH entry point, contrarily to what the paper states. This could explain the difference in boot time performance.<p>Memory consumption is tricky, QEMU uses green threads and has to allocate stacks for them. This can show up as large mmaps but they do not correspond to actual memory usage. But again without redoing the experiments it&#x27;s hard to say if that is the cause. I have no doubt Firecracker is leaner in this respect, anyway, and it&#x27;s an important metric for Amazon.<p>That said, I am all for competition, and some of the measurements in the paper are certainly worth a look to see if there is more low hanging fruit to pick, especially with respect to memory consumption. QEMU is a complex program, as demonstrated by the complexity of measuring it accurately, and Firecracker is a very interesting project. I am very happy to collaborate with the authors of the paper on rust-vmm.<p>[1] <a href="http:&#x2F;&#x2F;people.redhat.com&#x2F;pbonzini&#x2F;microvm&#x2F;" rel="nofollow">http:&#x2F;&#x2F;people.redhat.com&#x2F;pbonzini&#x2F;microvm&#x2F;</a>
评论 #22361743 未加载
srmatto超过 5 年前
I&#x27;m really excited to see where this goes in the community. There are some interesting projects using Firecracker such as Weave Ignite and firekube that I think could improve the security of Kubernetes. Also lightweight VMs are exciting in their own right.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;weaveworks&#x2F;ignite" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;weaveworks&#x2F;ignite</a><p><a href="https:&#x2F;&#x2F;github.com&#x2F;weaveworks&#x2F;wks-quickstart-firekube" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;weaveworks&#x2F;wks-quickstart-firekube</a>
评论 #22361299 未加载
nezirus超过 5 年前
I&#x27;ve also had great fun with Firecracker and virt-builder (<a href="http:&#x2F;&#x2F;libguestfs.org&#x2F;virt-builder.1.html" rel="nofollow">http:&#x2F;&#x2F;libguestfs.org&#x2F;virt-builder.1.html</a>) as a way to prepare and use generic distros on Firecracker.<p>(The only additional step is to use guestfish to &quot;download&quot; root partition from disk image created with virt-format and virt-builder)
deforciant超过 5 年前
We have been using it to run e2e tests by creating multiple VMs that need to talk to each other and load some kernel modules. It works so much faster than relying on cloud providers or alternatives like Docker in Docker. Very good impressions so far :)
评论 #22360848 未加载
StreamBright超过 5 年前
I wish this was somehow baked into every operating system and every dev environment would be a firecracker VM.
polskibus超过 5 年前
Now, how can I use it in a private, non aws cloud?
评论 #22363907 未加载
评论 #22363896 未加载