use nested map to deploy 2 VM per node
This commit is contained in:
parent
285917f104
commit
8c793d3d59
@ -1,15 +1,36 @@
|
|||||||
module "pve_vm" {
|
module "pve_vm" {
|
||||||
source = "../../modules/pve_vm"
|
source = "../../modules/pve_vm"
|
||||||
for_each = toset(data.proxmox_virtual_environment_nodes.pve_nodes.names)
|
for_each = local.vm_list
|
||||||
node_name = each.value
|
node_name = each.value.node_name
|
||||||
vm_name = "${each.value}-vm"
|
vm_name = each.value.vm_name
|
||||||
vm_cpu = 2
|
vm_cpu = each.value.vm_cpu
|
||||||
vm_ram = 2048
|
vm_ram = each.value.vm_ram
|
||||||
vm_vlan = 66
|
vm_vlan = each.value.vm_vlan
|
||||||
}
|
}
|
||||||
|
|
||||||
data "proxmox_virtual_environment_nodes" "pve_nodes" {}
|
locals {
|
||||||
|
vm_attr = {
|
||||||
|
"master" = { ram = 2048, cpu = 2, vlan = 66 }
|
||||||
|
"worker" = { ram = 1024, cpu = 1, vlan = 66 }
|
||||||
|
}
|
||||||
|
|
||||||
|
vm_list = {
|
||||||
|
for vm in flatten([
|
||||||
|
for node in data.proxmox_virtual_environment_nodes.pve_nodes.names : [
|
||||||
|
for role, config in local.vm_attr : {
|
||||||
|
node_name = node
|
||||||
|
vm_name = "${role}-${node}"
|
||||||
|
vm_cpu = config.cpu
|
||||||
|
vm_ram = config.ram
|
||||||
|
vm_vlan = config.vlan
|
||||||
|
}
|
||||||
|
]
|
||||||
|
]) : vm.vm_name => vm
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
data "proxmox_virtual_environment_nodes" "pve_nodes" {}
|
||||||
|
|
||||||
output "vm_ip" {
|
output "vm_ip" {
|
||||||
value = { for k, v in module.pve_vm : "${k}-vm" => v.vm_ip }
|
value = { for k, v in module.pve_vm : k => v.vm_ip }
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user