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 | |
|---|---|
| FAI | High quality tool for fully automatic installation of Linux systems |
| Foreman | Life cycle systems management tool |
| Cobbler | OS provisioning and profile management |
| m23 | Software distribution and management system |
| MAAS | Data centre automation platform |
| Confluent | Handle essential bootstrap and operation of scale-out server configurations |
| xCAT | Extreme Cluster Administration Toolkit |
| OpenQRM | Systems management platform |
| Uyuni | Configuration and infrastructure management solution |
| Warewulf | Stateless, network-boot cluster provisioning system |
| Tinkerbell | Bare metal provisioning engine |
| Ironic | OpenStack service for managing and provisioning bare metal servers |
Read our verdict in the software roundup.
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. |


Please read our Comment Policy before commenting.