102 lines
No EOL
2.1 KiB
HCL
102 lines
No EOL
2.1 KiB
HCL
locals {
|
|
master_count = 3
|
|
agents_count = 4
|
|
master_targets = ["zeus", "hades", "poseidon"]
|
|
agent_targets = ["hermes", "ares", "oceanus", "hyperion"]
|
|
}
|
|
|
|
resource "proxmox_vm_qemu" "masters" {
|
|
count = local.master_count
|
|
name = "mester-${count.index}"
|
|
desc = "K3S master node"
|
|
target_node = local.master_targets[count.index]
|
|
|
|
agent = 1
|
|
onboot = true
|
|
|
|
clone = "VM 9000"
|
|
cores = 4
|
|
sockets = 1
|
|
cpu = "host"
|
|
memory = 4096
|
|
|
|
# Setup the disk
|
|
disks {
|
|
ide {
|
|
ide2 {
|
|
cloudinit {
|
|
storage = "cronus_backup"
|
|
}
|
|
}
|
|
}
|
|
scsi {
|
|
scsi0 {
|
|
disk {
|
|
size = "10G"
|
|
storage = "maskin"
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
network {
|
|
bridge = "vmbr0"
|
|
model = "virtio"
|
|
}
|
|
scsihw = "virtio-scsi-pci"
|
|
os_type = "cloud-init"
|
|
ipconfig0 = "ip=192.168.1.${80+count.index}/24,gw=192.168.1.1"
|
|
nameserver = "192.168.1.69"
|
|
ciuser = "ansible"
|
|
sshkeys = var.ssh_public_key
|
|
}
|
|
|
|
resource "proxmox_vm_qemu" "agents" {
|
|
count = local.agents_count
|
|
name = "agent-${count.index}"
|
|
desc = "K3S agent node"
|
|
target_node = local.agent_targets[count.index]
|
|
|
|
agent = 1
|
|
onboot = true
|
|
|
|
clone = "VM 9000"
|
|
cores = 4
|
|
sockets = 1
|
|
cpu = "host"
|
|
memory = 6144
|
|
|
|
# Setup the disk
|
|
disks {
|
|
ide {
|
|
ide2 {
|
|
cloudinit {
|
|
storage = "cronus_backup"
|
|
}
|
|
}
|
|
}
|
|
scsi {
|
|
scsi0 {
|
|
disk {
|
|
size = "20G"
|
|
storage = "maskin"
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
network {
|
|
bridge = "vmbr0"
|
|
model = "virtio"
|
|
}
|
|
scsihw = "virtio-scsi-pci"
|
|
os_type = "cloud-init"
|
|
ipconfig0 = "ip=192.168.1.${40+count.index}/24,gw=192.168.1.1"
|
|
nameserver = "192.168.1.69"
|
|
ciuser = "ansible"
|
|
sshkeys = var.ssh_public_key
|
|
} |