Live data from Hacker News

Firecracker MicroVMs

firecracker-microvm.github.io

21–30 of 62 posts

Re: Firecracker MicroVMs

#21

what is the advantage of server-less if you have to have to manage the servers?

If you're hosting someone else's code.

If you work at a large enough company it all starts to look like someone else’s code.

The malicious person can always find the worst way to break everything, but dumb luck can get you pretty close.

Re: Firecracker MicroVMs

#22
post #18

For those using firecracker, what's your method for building a rootfs?

I build them using Buildah, then mkfs.ext4, mount, cp, umount. It's a little bit annoying that I'm still using root at least for the mount part. OpenWrt's build system has a method of building rootfs ext4 and squashfs images without any root, it's somewhere in that large Makefile mess. (sorry, reposting this as I first replied to the wrong parent)

I similarly have built bootable disk images with various tools including buildah and have never been able to fully get away from needing root for various chrooty/loopbacky parts of the process. In principle, it should be very possible to point grub at a filesystem-in-a-file and be like "install to that", but I could never make it happen; it always wanted to be trying to infer things about how to configure itself from examining the host system.

And yes, I've studied the OpenWRT build to no avail. I would be delighted for someone to dissect whatever it is that goes on in there and write it up.

Re: Firecracker MicroVMs

#23
post #8

Does anyone know of any good orchestrators for Firecracker VMs? While the technology is great, the CLI and API are still a bit too complex and low-level to implement some basic use cases in production.

Depending on what you want, OpenNebula (opennebula.io) has been making a thing of Firecracker.

Re: Firecracker MicroVMs

#24
post #18

For those using firecracker, what's your method for building a rootfs?

I build them using Buildah, then mkfs.ext4, mount, cp, umount. It's a little bit annoying that I'm still using root at least for the mount part. OpenWrt's build system has a method of building rootfs ext4 and squashfs images without any root, it's somewhere in that large Makefile mess. (sorry, reposting this as I first replied to the wrong parent)

No experience with Firecracker specifically, but if squashfs images are sufficient, one should be able to build a tar archive of the filesystem without root (where all the files have the correct owners, mode, etc.) and then convert it to squashfs using `tar2sqfs` in https://github.com/AgentD/squashfs-tools-ng, also without root - I've done something like this to create squashfs images in constrained build environments, which worked well.

Re: Firecracker MicroVMs

#25
post #8

Does anyone know of any good orchestrators for Firecracker VMs? While the technology is great, the CLI and API are still a bit too complex and low-level to implement some basic use cases in production.

Kubernetes using Kata containers[1] as a containerd[2] backend [1] https://aws.amazon.com/blogs/opensource/kata-containers-1-5-... [2] https://github.com/kata-containers/kata-containers/blob/main...

How does that compare to firecracker-containerd?

https://github.com/firecracker-microvm/firecracker-container...

This repository enables the use of a container runtime, containerd, to manage Firecracker microVMs. Like traditional containers, Firecracker microVMs offer fast start-up and shut-down and minimal overhead. Unlike traditional containers, however, they can provide an additional layer of isolation via the KVM hypervisor.

Re: Firecracker MicroVMs

#29
Note that this Amazon developed technology does not work on Amazon Web Services instances.

It does however work on Google, Azure and Digital Ocean instances where you can configure nested virtualisation.

Re: Firecracker MicroVMs

#30

Note that this Amazon developed technology does not work on Amazon Web Services instances. It does however work on Google, Azure and Digital Ocean instances where you can configure nested virtualisation.

It works on AWS's metal instances, doesn't it?

That is definitely a constraint though, as the smallest available metal instances are pretty large, hence costly on a per instance basis.

Post reply on HN