I built okd-metal-installer to make bare-metal OKD installs less dependent on fragile PXE-style boot infrastructure.
The tool uses Ansible inventory plus group_vars / host_vars as the source of truth for cluster topology and host configuration. It generates the required Ignition config, compiles static network configuration using NMState, and customizes a CoreOS ISO per host with those settings embedded.
Instead of relying on network boot, the boot media can be delivered either manually or through Redfish virtual media. The deployment flow in the repo is:
I built okd-metal-installer to make bare-metal OKD installs less dependent on fragile PXE-style boot infrastructure.
The tool uses Ansible inventory plus group_vars / host_vars as the source of truth for cluster topology and host configuration. It generates the required Ignition config, compiles static network configuration using NMState, and customizes a CoreOS ISO per host with those settings embedded.
Instead of relying on network boot, the boot media can be delivered either manually or through Redfish virtual media. The deployment flow in the repo is:
preflight validation
Ignition generation
network config generation
ISO customization
config serving
DNS configuration
boot delivery
Current support includes:
single-node, compact, and HA topologies
disconnected / air-gapped installs
Route 53 or internal dnsmasq for DNS
FCOS / SCOS support
Repo: https://github.com/tosin2013/okd-metal-installer
Nice thanks for sharing. Just curious, what specifically was the problem you ran into that inspired you to build this?