Skip to content

lm

Hi there 👋

Thanks for visiting, this organization contains all the projects related to Weaveworks Liquid Metal.

🙋 What is Liquid Metal?

Liquid Metal is a set of solutions to:

  • Declaratively provision Kubernetes clusters dynamically on lightweight virtual machines (i.e. microVMs) and bare-metal
  • Create lightweight clusters to maximize the available [edge] compute
    • microVMs are our friend
    • More clusters/nodes on the available bare-metal hosts
    • Minimizing resource footprint without sacrificing hard isolation
  • Support clusters where direct access to hardware acceleration is needed (i.e. 5G networks)
  • Using standard kubernetes and linux kernel and operating system capabilities

Hang on, what is this microvm thing you mention!?! A microvm is a very lightweight virtual machine that optimizes for speed and less resource consumption over supporting a wide array of devices/etc. We support Firecracker and experimentally Cloud Hypervisor. Read more about this here and here.

🔎 How do i get started?

🧨 BREAKING NEWS 🧨 There are now brand new and extremely shiny user docs published right here 😱 . They are still a work-in-progress, but soon they will be a one-stop-shop for everything you could ever want to know about creating Liquid Metal platform and bare-metal workload clusters:

  • Getting started tutorial for running Liquid Metal on your own machine
  • Advanced guides to running Liquid Metal in production
  • Architecture diagrams
  • Community information
  • And much more!

While we work on this, if you notice the offical site doesn't have everything you need right now, you can head on over to our getting started repo where we have documentation, demos and some automation goodies for you 🎉.

✨ What are the main projects?

  • flintlock - this is an agent that's deployed to a host machine (physical or virtual) which enables you to start/manage microvms via API calls. It does not know of Kubernetes and could therefore be used to start a microvm to accomplish any task you choose. We integrate heavily with containerd as a way to use container images as the volumes for the microvm....copying rawfs files around is a real pain and very slow.
  • Cluster API Provider Microvm (CAPMVM) - this provides the Kubernetes cluster creation/lifecycle management (along with the Cluster API more generally). Its responsible for creating microvms on various hosts via calls to Flintlock and bootstrapping Kubernetes on those microvms. So a microvm becomes a whole Kubernetes node.
  • Image Builder - this is where we build the container images that we use for root volumes and kernels for the microvm.

🔦 What else are we looking at?

  • fl - an experimental CLI for interacting with flintlock to manage the lifecycle of microvms.
  • EKS-Anywhere (EKS-A) (poc) - we have been working on adding CAPMVM as a provider to EKS-A.
  • Microvm Scheduler (in-development) - this will enable the dynamic placement of microvms on the available pool of hosts machines taking into account resource availability/requirements, labels etc. So, a bit like kube-scheduler but for microvms. We will be providing some integration points so that the scheduler can automatically determine the available baremetal hosts, and we'll add an integration for Tinkerbell (and probably Ironic & MaaS).

✏️ Want to know more?

Get in contact with us if you want to learn more about Liquid Metal. You can hit us up in any of these ways:

📚 Some extra reading

Pinned Loading

  1. flintlock flintlock Public

    Lock, Stock, and Two Smoking MicroVMs. Create and manage the lifecycle of MicroVMs backed by containerd.

    Go 450 29

  2. image-builder image-builder Public

    Image building for Weaveworks Liquid Metal projects.

    Dockerfile 16 9

  3. cluster-api-provider-microvm cluster-api-provider-microvm Public

    The Cluster API provider for creating microvm (i.e. Firecracker, Cloud Hypervisor) clusters

    Go 75 6

  4. fl fl Public

    An experimental CLI for interacting with Flintlock

    Go 2 3

Repositories

Showing 10 of 13 repositories
  • flintlock Public

    Lock, Stock, and Two Smoking MicroVMs. Create and manage the lifecycle of MicroVMs backed by containerd.

    weaveworks-liquidmetal/flintlock’s past year of commit activity
    Go 450 MPL-2.0 29 9 20 Updated Jun 24, 2024
  • cluster-api-provider-microvm Public

    The Cluster API provider for creating microvm (i.e. Firecracker, Cloud Hypervisor) clusters

    weaveworks-liquidmetal/cluster-api-provider-microvm’s past year of commit activity
  • microvm-operator Public

    Kubernetes Operator to create MicroVMs on Flintlock hosts

    weaveworks-liquidmetal/microvm-operator’s past year of commit activity
    Go 3 MPL-2.0 3 7 5 Updated Sep 18, 2023
  • controller-pkg Public

    Common packages used by LM controllers and operators

    weaveworks-liquidmetal/controller-pkg’s past year of commit activity
    Go 3 2 0 0 Updated May 31, 2023
  • site Public

    The published docs for liquidmetal

    weaveworks-liquidmetal/site’s past year of commit activity
    JavaScript 0 3 7 1 Updated May 31, 2023
  • liquid-metal-acceptance-tests Public

    LMATS - The Liquid Metal e2e test suite

    weaveworks-liquidmetal/liquid-metal-acceptance-tests’s past year of commit activity
    Go 0 2 6 0 Updated Apr 17, 2023
  • image-builder Public

    Image building for Weaveworks Liquid Metal projects.

    weaveworks-liquidmetal/image-builder’s past year of commit activity
    Dockerfile 16 MPL-2.0 9 6 0 Updated Apr 4, 2023
  • microvm-action-runner Public

    A service to create ad-hoc action runners on microvms

    weaveworks-liquidmetal/microvm-action-runner’s past year of commit activity
  • terraform-equinix-liquidmetal Public

    Terraform modules for creating a Liquid Metal Platform in Equinix

    weaveworks-liquidmetal/terraform-equinix-liquidmetal’s past year of commit activity
    HCL 3 2 5 0 Updated Mar 16, 2023
  • fl Public

    An experimental CLI for interacting with Flintlock

    weaveworks-liquidmetal/fl’s past year of commit activity
    Go 2 MPL-2.0 3 1 1 Updated Feb 3, 2023

Most used topics

Loading…