34 lines
1.2 KiB
Markdown
34 lines
1.2 KiB
Markdown
# Multi VM Terraform setup
|
|
|
|
## Priprema okruženja
|
|
- `cd ~/multi-vm-iac`
|
|
- `rm -rf .terraform terraform.tfstate*` # osveži backend da ne deli state sa starim projektom
|
|
- `terraform init -reconfigure`
|
|
|
|
## Konfiguracija IP adresa
|
|
- `cat <<'EOF' > terraform.tfvars`
|
|
```
|
|
vm_addresses = {
|
|
alpha = "10.1.50.XXX/24"
|
|
bravo = "10.1.50.YYY/24"
|
|
charlie = "10.1.50.ZZZ/24"
|
|
delta = "10.1.50.WWW/24"
|
|
}
|
|
```
|
|
`EOF`
|
|
- Izmeni XXX/YYY/ZZZ/WWW u slobodne adrese pre `apply`.
|
|
|
|
## Startovanje pojedinačnih VM-ova
|
|
- `terraform plan -target=proxmox_virtual_environment_vm.vm_alpha`
|
|
- `terraform apply -target=proxmox_virtual_environment_vm.vm_alpha`
|
|
- Ponovi za `vm_bravo`, `vm_charlie`, `vm_delta` po potrebi.
|
|
|
|
## Provera i gašenje
|
|
- `terraform state list` # pregled aktivnih resursa u ovom projektu
|
|
- `terraform destroy -target=proxmox_virtual_environment_vm.vm_alpha` # gasi samo jednu mašinu
|
|
- `terraform destroy` # gasi sve instance iz ovog foldera kada završiš
|
|
|
|
## Dodatno
|
|
- Ako budeš delio state, pređi na remote backend (S3 + DynamoDB lock, Terraform Cloud…) pre proizvodnog korišćenja.
|
|
- Za promenu gateway-a koristi varijablu `vm_gateway` u `terraform.tfvars`.
|