Configuration
Configure nodes
Edit infra/production/metal/hosts.json with your machines’ static IPs, MAC addresses, and disk paths.
Installation erases the disks.
Note
Example
{ "homelab-1": {"ip": "192.168.1.110", "mac_address": "02:00:00:00:00:01", "disk": "/dev/sda"}, "homelab-2": {"ip": "192.168.1.111", "mac_address": "02:00:00:00:00:02", "disk": "/dev/sda"}, "homelab-3": {"ip": "192.168.1.112", "mac_address": "02:00:00:00:00:03", "disk": "/dev/sda"}, "homelab-4": {"ip": "192.168.1.113", "mac_address": "02:00:00:00:00:04", "disk": "/dev/sda"} }
Configure the cluster
Edit infra/production/cluster/config.json with your network settings.
Set init_host to a host in the inventory:
{
"init_host": "homelab-1",
"vip": "192.168.1.100",
"load_balancer_cidr": "192.168.1.224/27",
"network": {"prefix_length": 24, "gateway": "192.168.1.1"}
}
Configure services
Update the following settings in infra/production/:
domainin thecloudflare,argocd, andplatformTerragrunt unitszone_namein the Cloudflare unit
Review the settings in apps/*.yaml, including image registries and homepage links.
After examining the diff, commit and push the changes. Continue with deployment.