matchbox is a network booting and provisioning service designed to automate the deployment of Linux operating systems on physical machines. It associates machines with provisioning profiles according to hardware identifiers and other attributes. These profiles define the information required to boot a machine over the network and configure its operating system.
The software is particularly suited to deploying Fedora CoreOS and Flatcar Linux systems. It works with PXE and iPXE booting, using Ignition configuration files to prepare machines without requiring administrators to configure each server individually.
matchbox separates machine identification from the configuration applied to that machine. This makes it possible to provision different groups of servers with their own settings while retaining a common deployment infrastructure.
Its API also allows provisioning definitions to be managed through external automation tools, making matchbox suitable for repeatable infrastructure deployments.
This is free and open source software.
Key Features
- Matches physical machines to provisioning profiles using MAC addresses, UUIDs, hostnames, serial numbers and other attributes.
- Supports PXE network booting with iPXE chainloading.
- Provides boot configurations specifying Linux kernels, initial ramdisks and kernel arguments.
- Automates Fedora CoreOS and Flatcar Linux provisioning using Ignition.
- Uses groups and profiles to apply different configurations to individual machines or collections of hosts.
- Supports default profiles for machines without explicit matching rules.
- Renders templated Ignition, Butane, cloud-config and generic configuration files.
- Allows template variables to be populated from machine metadata, selectors and request parameters.
- Provides HTTP endpoints for serving boot scripts, configuration data and machine metadata.
- Offers an authenticated gRPC API with TLS client authentication.
- Integrates with Terraform for declarative management of provisioning profiles and machine groups.
- Includes an HTTP asset server for serving and caching boot resources.
- Supports iPXE and GRUB-based boot configuration workflows.
- Works with existing DHCP, DNS and TFTP infrastructure without replacing those services.
- Supports provisioning individual hosts or multi-node clusters using reusable configuration definitions.
Website: github.com/poseidon/matchbox
Support:
Developer: Poseidon Project
License: Apache License 2.0
matchbox 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.