What's new in Metal³
Baremetal Host Provisioning for Kubernetes
Lennart Jern @ Ericsson
10th May 2022
metal3.io
Baremetal Host Provisioning for Kubernetes
Lennart Jern @ Ericsson
10th May 2022
metal3.io
What is Metal³?
The Metal³ project (pronounced: “Metal Kubed”) provides components for bare metal host management with Kubernetes. You can enroll your bare metal machines, provision operating system images, and then, if you like, deploy Kubernetes clusters to them.
Components:
Builds on and integrates with:
Metal³
Metal³
Master
Machine
GCP
Machine
Baremetal
Operator
Metal3
Machine
AWS
Machine
BareMetalHost
Metal³ Stack
Metal³
management
storage
compute
network
Metal³ Stack
Metal³
management
storage
compute
network
Metal³ Stack
Metal³
Ironic documentation : https://docs.openstack.org/ironic/latest/
management
storage
compute
network
Ironic
Baremetal Operator
+
Metal³ Stack
Metal³
management
storage
compute
network
Ironic documentation : https://docs.openstack.org/ironic/latest/
Ironic
Baremetal Operator
+
Cluster-api- provider-metal3
Cluster API
Metal³
Cluster-api
Cluster
Controller
BareMetal
Host
Metal3
Machine
Machine
Metal3
Cluster
Cluster
Kubeadm
Config
Machine
Controller
Metal3
Cluster
Controller
Metal3
Machine
Controller
Cluster-api-
provider-metal3
Baremetal
Operator
Cluster API
Provider
Kubeadm
Object Refernce
Reconcile
apiVersion: infrastructure.cluster.x-k8s.io/v1alpha4
kind: Metal3Cluster
metadata:
name: example_cluster
spec:
controlPlaneEndpoint:
host: 192.168.111.249
port: 6443
Metal3Cluster
Metal³
apiVersion: infrastructure.cluster.x-k8s.io/v1alpha4
kind: Metal3Machine
metadata:
annotations:
metal3.io/BareMetalHost: metal3/node-0
finalizers:
- metal3machine.infrastructure.cluster.x-k8s.io
name: test1-controlplane-s6tdz
namespace: metal3
ownerReferences:
- apiVersion: cluster.x-k8s.io/v1alpha3
blockOwnerDeletion: true
controller: true
kind: Machine
name: test1-jntbq
spec:
hostSelector: {}
image:
checksum: https://cloud.centos.org/centos/8/x86_64/images/CentOS-8.md5sum
checksumType: md5
format: raw
url: https://cloud.centos.org/centos/8/x86_64/images/CentOS-8-GenericCloud-8.2.2004-20200611.2.x86_64.qcow2
providerID: metal3://fc5847cc-7cde-46f5-a4f4-99024439f6a4
status:
addresses:
- address: 192.168.111.20
type: InternalIP
- address: 172.22.0.66
type: InternalIP
- address: node-0
type: Hostname
- address: node-0
type: InternalDNS
ready: true
Metal3Machine
Metal³
Managing bare metal hosts
Prerequisite: A Kubernetes cluster (the management cluster).
Metal³
Bare metal Kubernetes clusters
Prerequisite: previous slide
Metal³
So what's new?
Metal³
So what's new? - continued
Metal³
Let's see a
Let's see a
Metal³
Recording: https://asciinema.org/a/493053
Metal³
Bootstrap cluster
Minikube
CAPI
CAPM3
BMO
Target cluster
Metal³
Management cluster
Minikube
CAPI
CAPM3
BMO
Management cluster
Metal³
Management cluster
Minikube
CAPI
CAPM3
BMO
Management cluster
Metal³
Interested to contribute...
We welcome you very much!
Metal³
Metal³ Community
Contributors: Red Hat, Ericsson, Mirantis, Dell EMC, Fujitsu, AT&T
#cluster-api-baremetal channel on K8S slack
Community meetings in Zoom. Every Wednesday, @14:00 UTC
Github: https://github.com/metal3-io
Meeting recordings & Demos: Metal³ YouTube channel
Mailing list: https://groups.google.com/g/metal3-dev
Website: https://metal3.io
Useful links