Announcement: Matchbox v0.6.0 is released with a new Matchbox Terraform Provider and tutorial.
matchbox
is a service that matches bare-metal machines (based on labels like MAC, UUID, etc.) to profiles to PXE boot and provision Container Linux clusters. Profiles specify the kernel/initrd, kernel arguments, iPXE config, GRUB config, Container Linux Config, Cloud-Config, or other configs a machine should use. Matchbox can be installed as a binary, RPM, container image, or deployed on a Kubernetes cluster and it provides an authenticated gRPC API for clients like terraform.
- Documentation
- matchbox Service
- Profiles
- Groups
- Config Templates
- Configuration
- HTTP API / gRPC API
- Background: Machine Lifecycle
- Background: PXE Booting
- Installation
- Installing on CoreOS / Linux distros
- Installing on Kubernetes
- Running with rkt / docker
- Network Setup
Local QEMU/KVM
Create example clusters on-premise or locally with QEMU/KVM.
Terraform-based
- simple-install - Install Container Linux with an SSH key on all machines (beginner)
- etcd3 - Install a 3-node etcd3 cluster
- Kubernetes - Install a 3-node self-hosted Kubernetes v1.6.2 cluster
- Terraform Modules - Re-usable Terraform Modules
Manual
- etcd3 - Install a 3-node etcd3 cluster
- Kubernetes - Install a 3-node self-hosted Kubernetes v1.6.2 cluster
- Static Kubernetes (discouraged, static systemd units)
- Static rktnetes (discouraged, static systemd units)
- dnsmasq - Run DHCP, TFTP, and DNS services with docker or rkt
- squid - Run a transparent cache proxy
- terraform-provider-matchbox - Terraform plugin which supports "matchbox" provider
Tectonic is the enterprise-ready Kubernetes offering from CoreOS (free for 10 nodes!). The Tectonic Installer app integrates directly with matchbox
through its gRPC API to provide a rich graphical client for populating matchbox
with machine configs.