Server

Bare Metal Operator – Kubernetes bare metal provisioning

Bare Metal Operator is a Kubernetes operator for managing the provisioning and lifecycle of physical servers.

Developed as part of the Metal3 project, it extends Kubernetes with an API for representing and controlling bare metal hosts. Instead of managing physical servers through separate manual procedures, administrators can describe the desired state of their machines using Kubernetes resources.

The operator maintains an inventory of available hosts and coordinates operations such as hardware inspection, operating system deployment and deprovisioning. It integrates with provisioning components, including OpenStack Ironic, to communicate with physical hardware and carry out the required operations.

This approach is intended for infrastructure environments where physical machines need to be managed in a repeatable, automated manner, particularly when building Kubernetes clusters on bare metal.

This is free and open source software.

Key Features

  • Provides a Kubernetes API for managing physical servers through BareMetalHost custom resources.
  • Maintains host inventories with information about provisioning state and hardware configuration.
  • Inspects server hardware, including CPUs, memory, storage devices and network interfaces.
  • Provisions physical machines using administrator-specified operating system images.
  • Supports disk cleaning before or after provisioning to remove existing data.
  • Uses reconciliation controllers to manage host lifecycle transitions and desired state.
  • Integrates with OpenStack Ironic for hardware inspection, provisioning and management.
  • Supports out-of-band management through compatible baseboard management controllers.
  • Provides resources for inspecting and managing host firmware settings.
  • Supports firmware component inventory and controlled firmware updates.
  • Offers hardware inspection data through dedicated Kubernetes resources.
  • Includes preprovisioning image management for preparing machines for deployment.
  • Supports host claims for coordinating allocation of available bare metal hosts.
  • Provides network switch configuration resources for provisioning environments.
  • Includes validation webhooks and configurable provisioning behaviour.

Website: github.com/metal3-io/baremetal-operator
Support:
Developer: Metal3 Project contributors
License: Apache License 2.0

Bare Metal Operator is written in Go. Learn Go with our recommended free books and free tutorials.


Related Software

Server Provisioning
FAIHigh quality tool for fully automatic installation of Linux systems
ForemanLife cycle systems management tool
CobblerOS provisioning and profile management
m23Software distribution and management system
MAASData centre automation platform
ConfluentHandle essential bootstrap and operation of scale-out server configurations
xCATExtreme Cluster Administration Toolkit
OpenQRMSystems management platform
UyuniConfiguration and infrastructure management solution
WarewulfStateless, network-boot cluster provisioning system
TinkerbellBare metal provisioning engine
IronicOpenStack service for managing and provisioning bare metal servers

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted