{ ... }: { plasmacloud.cluster = { enable = true; name = "plasmacloud-vm-cluster"; nodes = { node01 = { role = "control-plane"; ip = "192.168.100.11"; services = [ "chainfire" "flaredb" "iam" ]; labels = { tier = "control-plane"; platform = "vm-cluster"; }; pool = "control"; nodeClass = "control-plane"; failureDomain = "rack-a"; nixProfile = "profiles/control-plane"; installPlan = { nixosConfiguration = "node01"; diskoConfigPath = "nix/nodes/vm-cluster/node01/disko.nix"; targetDisk = "/dev/vda"; }; desiredSystem = { healthCheckCommand = [ "systemctl" "is-system-running" "--wait" ]; rollbackOnFailure = true; }; raftPort = 2380; apiPort = 2379; }; node02 = { role = "control-plane"; ip = "192.168.100.12"; services = [ "chainfire" "flaredb" "iam" ]; labels = { tier = "control-plane"; platform = "vm-cluster"; }; pool = "control"; nodeClass = "control-plane"; failureDomain = "rack-b"; nixProfile = "profiles/control-plane"; installPlan = { nixosConfiguration = "node02"; diskoConfigPath = "nix/nodes/vm-cluster/node02/disko.nix"; targetDisk = "/dev/vda"; }; desiredSystem = { healthCheckCommand = [ "systemctl" "is-system-running" "--wait" ]; rollbackOnFailure = true; }; raftPort = 2380; apiPort = 2379; }; node03 = { role = "control-plane"; ip = "192.168.100.13"; services = [ "chainfire" "flaredb" "iam" ]; labels = { tier = "control-plane"; platform = "vm-cluster"; }; pool = "control"; nodeClass = "control-plane"; failureDomain = "rack-c"; nixProfile = "profiles/control-plane"; installPlan = { nixosConfiguration = "node03"; diskoConfigPath = "nix/nodes/vm-cluster/node03/disko.nix"; targetDisk = "/dev/vda"; }; desiredSystem = { healthCheckCommand = [ "systemctl" "is-system-running" "--wait" ]; rollbackOnFailure = true; }; raftPort = 2380; apiPort = 2379; }; }; deployer = { clusterId = "plasmacloud-vm-cluster"; environment = "dev"; nodeClasses = { control-plane = { description = "Control-plane VM cluster nodes"; nixProfile = "profiles/control-plane"; roles = [ "control-plane" ]; labels = { tier = "control-plane"; platform = "vm-cluster"; }; }; }; pools = { control = { description = "VM cluster control-plane pool"; nodeClass = "control-plane"; labels = { plane = "control"; cluster = "vm-cluster"; }; }; }; }; bootstrap.initialPeers = [ "node01" "node02" "node03" ]; bgp.asn = 64512; }; }