Examples
These examples network boot and provision machines into CoreOS clusters using matchbox. You can re-use their profiles to provision your own physical machines.
| Name | Description | CoreOS Version | FS | Docs |
|---|---|---|---|---|
| simple | CoreOS with autologin, using iPXE | stable/1185.3.0 | RAM | reference |
| simple-install | CoreOS Install, using iPXE | stable/1185.3.0 | RAM | reference |
| grub | CoreOS via GRUB2 Netboot | stable/1185.3.0 | RAM | NA |
| etcd | A 3 node etcd cluster with proxies | stable/1185.3.0 | RAM | reference |
| etcd-install | Install a 3 node etcd cluster to disk | stable/1185.3.0 | Disk | reference |
| etcd3 | A 3 node etcd3 cluster with proxies | stable/1185.3.0 | RAM | None |
| etcd3-install | Install a 3 node etcd3 cluster to disk | stable/1185.3.0 | Disk | None |
| k8s | Kubernetes cluster with 1 master, 2 workers, and TLS-authentication | stable/1185.3.0 | Disk | tutorial |
| k8s-install | Kubernetes cluster, installed to disk | stable/1185.3.0 | Disk | tutorial |
| rktnetes | Kubernetes cluster with rkt container runtime, 1 master, workers, TLS auth (experimental) | stable/1185.3.0 | Disk | tutorial |
| rktnetes-install | Kubernetes cluster with rkt container runtime, installed to disk (experimental) | stable/1185.3.0 | Disk | tutorial |
| bootkube | iPXE boot a self-hosted Kubernetes cluster (with bootkube) | stable/1185.3.0 | Disk | tutorial |
| bootkube-install | Install a self-hosted Kubernetes cluster (with bootkube) | stable/1185.3.0 | Disk | tutorial |
| torus | Torus distributed storage | stable/1185.3.0 | Disk | tutorial |
Tutorials
Get started running matchbox on your Linux machine to network boot and provision clusters of VMs or physical hardware.
- Getting Started
- Kubernetes (static manifests)
- Kubernetes (rktnetes)
- Kubernetes (self-hosted)
- Torus Storage
- Lab Examples
Autologin
Example profiles pass the coreos.autologin kernel argument. This skips the password prompt for development and troubleshooting and should be removed before production.
SSH Keys
Example groups allow ssh_authorized_keys to be added for the core user as metadata. You might also include this directly in your Ignition.
# /var/lib/matchbox/groups/default.json
{
"name": "Example Machine Group",
"profile": "pxe",
"metadata": {
"ssh_authorized_keys": ["ssh-rsa pub-key-goes-here"]
}
}
Conditional Variables
"pxe"
Some examples check the pxe variable to determine whether to create a /dev/sda1 filesystem and partition for PXEing with root=/dev/sda1 ("pxe":"true") or to write files to the existing filesystem on /dev/disk/by-label/ROOT ("pxe":"false").