-
-
Notifications
You must be signed in to change notification settings - Fork 84
Firestarter
This page will be devoted to deep optimization of BSDs and Linux distros for virtual systems for the fastest possible work in the bhyve hypervisor. This allows you to use the bhyve hypervisor as a base for the FaaS/high performance platform.
This is a logical continuation of https://github.com/cbsd/microbhyve R&D.
Timing of the accessibility of the entrance to the terminal from the moment the hypervisor starts:
OS/distro | time to ssh/login | Profile/exec cmd |
---|---|---|
FreeBSD | 1.18s | vm_os_type=freebsd vm_os_profile=cloud-firestarter-ufs-x64-14 |
Linux | 1.40s | vm_os_type=freebsd vm_os_profile=cloud-firestarter-debian-11 |
We believe that we will improve (reduce) these by about 5-10+ times!
This work is inspired by https://aws.amazon.com/blogs/aws/firecracker-lightweight-virtualization-for-serverless-computing/ and many more...
Initial 'firestarter' images available in CBSD 13.1.16+:
CBSD version | OS/distro | what was improved |
---|---|---|
13.1.6 | FreeBSD | Firestater custom kernel |
Switch to base-in-packages | ||
getting rid of the cloud-init service | ||
-------------- | -------------------------------------- | |
Linux | Custom kernel | |
getting rid of the cloud-init service | ||
------------ | -------------- | -------------------------------------- |
ℹ️ FreeBSD firestarter image hints: if you didn't find the usual commands/files in the distribution, just install the required package via pkg install -y FreeBSD-XXX
, e.g. for 'telnet':
pkg install -y FreeBSD-telnet
Full FreeBSD-base-in packages list: https://github.com/cbsd/cbsd/wiki/Firestarter-FreeBSD
Ref:
- https://dl.acm.org/doi/pdf/10.1145/3132747.3132763
- https://aws.amazon.com/blogs/aws/firecracker-lightweight-virtualization-for-serverless-computing/
- https://firecracker-microvm.github.io/
- https://fly.io/blog/docker-without-docker/
- https://kubevirt.io/
- https://williamdurand.fr/2022/07/11/containers-and-micro-virtual-machines/
- https://z49x2vmq.github.io/2020/12/24/linux-tiny-qemu/