Overview
This tutorial can be run on Linux and macOS. HOWEVER, if you are using a Mac, you need to complete a few extra steps. These are on the next page. Linux users can skip ahead.
In this tutorial we will use a single local machine to act as multiple devices in a development Liquid Metal platform.
We have tested this tutorial on Ubuntu 20.04
and 22.04
, but any current linux
distribution with systemctl
should do.
A Liquid Metal system/platform refers to the combination of a CAPI management cluster running CAPMVM, and a number of bare metal devices running Flintlock which are able to host MicroVMs.
A Liquid Metal cluster refers to a workload cluster created by CAPMVM with nodes
running in MicroVMs created by flintlockd
on the bare metal host.
In this workshop we will configured configure your local computer to act as both bare-metal host and a management CAPI cluster.
Part 1 - microvm host:β
We will:
- πΈοΈ Configure a custom virtual network to segregate our virtual devices
- π Install all required MicroVM host components
- Firecracker
- Containerd
- Flintlock
- πββοΈ Start the
flintlockd
service
Part 2 - management cluster:β
We will:
- π©βπΌ Use
kind
to create a local kubernetes cluster which will act as our CAPI management cluster - π§ Install CAPI and CAPMVM on that
kind
cluster - π€ Write a manifest for a bare metal cluster with one control-plane node and 5 workers
- π Apply the manifest to the
kind
cluster - π Watch as CAPMVM connects to our
flintlockd
service to create MicroVMs - ποΈ See kubernetes nodes brought up in each MicroVM, and joined in a workload cluster
Part 3 - wrap up:β
We will:
- π Take a look around the environment
- 𧨠Tear down:
- The bare metal workload cluster
- The management
kind
cluster - All running host services
- The custom virtual network
Let's get into it...
This tutorial is brand new. If you experience any issues or difficulties, please come to the Slack channel or open an issue in Github.