Hardware
The metal requirements for running Flintlock hosts.
Users are responsible for bringing and configuring their own hardware solutions.
Any hardware which can support KVM virtualisation can be used to host Liquid Metal MicroVMs.
So far we have tested on:
- Equinix
x86devices - Local workstations, such as Dell XPS
- Vagrant virtual machines running on macOS
- Raspberry Pi Model 4B
arm64boards
The majority of our testing has been on x86 architectures, but we have also
performed demos with ARM devices.
The provision tool
The recommended way to provision your devices is to use the provision.sh tool.
The script and documentation can be found here.
The entire device can be provisioned with all required components with
./provision.sh --all.
Run ./provision.sh --help for information on available commands.
If you are running Liquid Metal in production it is recommended that you attach
storage to each device acting as a host. If this is not possible, pass the --dev
flag upon execution and sparse storage will be generated.
Manual provisioning
If you would rather prepare your hosts manually or via your own tooling or automation, here is a list of required packages and components:
firecrackerfrom our supported fork.flintlockdcontainerd- The host must be capable of running hardware accelerated KVM virtual machines
- Either the
macvtapmodule loaded in the kernel or a bridge network - Devicemapper storage (see below)
Storage
When provisioning hosts in dev mode, no additional storage is required.
For production systems, an additional block device is required for devmapper
storage in direct-lvm mode.
This storage will be used by containerd to pull and snapshot MicroVM
kernel and OS images, as well as to store MicroVM metadata.
A volume configured as a thin pool must be created on the device. The provision.sh
tool has a subcommand to do this.
It can be called like so:
./provision.sh direct_lvm --disk <disk name>
If no disk is passed, the script will attempt to detect one which is available.
Run ./provision.sh --help for all options.