diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7d22ea2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.terraform +*.lock.hcl diff --git a/terraform/main.tf b/terraform/main.tf index 222936d..24dd6a6 100644 --- a/terraform/main.tf +++ b/terraform/main.tf @@ -47,7 +47,31 @@ locals { env_config = { prd = { - + dnsserver = "192.168.11.1" + k3master = { + count = 1 + name = ["master-prd"] + cores = 4 + memory = "4096" + drive = "20G" + storage = "cache-domains" + template = ["Debian12-Template"] + node = ["overlord"] + ip = ["10"] + vlan = 11 + } + k3server = { + count = 2 + name = ["node01-prd", "node02-prd"] + cores = 4 + memory = "4096" + drive = "60G" + storage = "cache-domains" + template = ["Debian12-Template", "Debian12-Template"] + node = ["mothership", "mothership"] + ip = ["20", "21"] + vlan = 11 + } } dev = { dnsserver = "192.168.10.1" @@ -128,44 +152,44 @@ resource "proxmox_vm_qemu" "k3master" { nameserver = local.config.dnsserver } -#resource "proxmox_vm_qemu" "k3server" { -# count = var.k3server.count -# ciuser = "administrator" -# vmid = "${var.k3server.vlan}${var.k3server.ip[count.index]}" -# name = var.k3server.name[count.index] -# target_node = var.k3server.node[count.index] -# clone = var.k3server.template[count.index] -# qemu_os = "other" -# full_clone = true -# os_type = "cloud-init" -# agent = 1 -# cores = var.k3server.cores -# sockets = 1 -# cpu = "host" -# memory = var.k3server.memory -# scsihw = "virtio-scsi-pci" -# bootdisk = "scsi0" -# boot = "c" -# onboot = true -# disk { -# size = var.k3server.drive -# type = "scsi" -# format = "raw" -# storage = var.k3server.storage -# ssd = 1 -# backup = false -# } -# network { -# model = "virtio" -# bridge = "vmbr1" -# } -# lifecycle { -# ignore_changes = [ -# network, -# ] -# } -# #Cloud Init Settings -# ipconfig0 = "ip=192.168.${var.k3server.vlan}.${var.k3server.ip[count.index]}/24,gw=192.168.10.1" -# searchdomain = "durp.loc" -# nameserver = var.dnsserver -#} +resource "proxmox_vm_qemu" "k3server" { + count = local.config.k3server.count + ciuser = "administrator" + vmid = "${local.config.k3server.vlan}${local.config.k3server.ip[count.index]}" + name = local.config.k3server.name[count.index] + target_node = local.config.k3server.node[count.index] + clone = local.config.k3server.template[count.index] + qemu_os = "other" + full_clone = true + os_type = "cloud-init" + agent = 1 + cores = local.config.k3server.cores + sockets = 1 + cpu = "host" + memory = local.config.k3server.memory + scsihw = "virtio-scsi-pci" + bootdisk = "scsi0" + boot = "c" + onboot = true + disk { + size = local.config.k3server.drive + type = "scsi" + format = "raw" + storage = local.config.k3server.storage + ssd = 1 + backup = false + } + network { + model = "virtio" + bridge = "vmbr1" + } + lifecycle { + ignore_changes = [ + network, + ] + } + #Cloud Init Settings + ipconfig0 = "ip=192.168.${local.config.k3server.vlan}.${local.config.k3server.ip[count.index]}/24,gw=192.168.10.1" + searchdomain = "durp.loc" + nameserver = local.config.dnsserver +}