Skip to main content

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 x86 devices
  • Local workstations, such as Dell XPS
  • Vagrant virtual machines running on macOS
  • Raspberry Pi Model 4B arm64 boards

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:

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.