Physical 4-node Nutanix Community Edition cluster – 100 % automated with Terraform
Real hardware (4 × Dell OptiPlex) • Latest AOS/CE • Cluster VIP 172.16.16.200
| Node | Host IP | CVM IP | Role |
|---|---|---|---|
| NU01 | 172.16.16.101 | 172.16.16.201 | Cluster member |
| NU02 | 172.16.16.102 | 172.16.16.202 | Cluster member |
| NU03 | 172.16.16.103 | 172.16.16.203 | Cluster member |
| NU04 | 172.16.16.104 | 172.16.16.204 | Cluster member |
- Cluster Management
- 3 storage containers
→ Linux_Servers (500 GB) | Windows_Servers (500 GB) | Sec_Lab (100 GB) - 3 VLAN subnets with DHCP
→ VLAN 50 (Linux) – full internet
→ VLAN 100 (Windows) – full internet
→ VLAN 75 (Sec_Lab) – zero internet (blocked via Flow NFC) - Ubuntu 22.04 cloud-init VMs (instant boot + SSH-ready)
- Windows Server 2022 / Windows 10 / Windows 11 VMs (ISO ready)
- Automatic snapshots + instant linked clones (golden-image workflow)
- Flow micro-segmentation ready for Sec_Lab
git clone https://github.com/sselvamani/nutanix-ce-terraform-lab.git
cd nutanix-ce-terraform-lab
terraform init
terraform plan
terraform apply -auto-approve
## Folder structure
.
├── cloud-init
│ ├── clone-ubuntu.tftpl
│ ├── ubuntu-cloud-init.yaml
│ └── ubuntu-cloud-init.yml
├── cluster-inventory-20251204.txt
├── flow_microsegmentation.tf
├── images.tf
├── outputs.tf
├── provider.tf
├── README.md
├── screenshots
├── subnets.tf
├── terraform.tfstate
├── terraform.tfstate.backup
├── terraform.tfvars
├── ubuntu_lite.tf
├── variables.tf
├── versions.tf
└── vms
├── clones.tf
├── snapshots.tf
├── windows_10.tf
├── windows_11.tf
└── windows_2022.tf