From c9cdf520c1a84504b3e75fecd4ced40818f777f3 Mon Sep 17 00:00:00 2001 From: Serge Logvinov Date: Mon, 3 Apr 2023 18:32:34 +0300 Subject: [PATCH] network subnets --- proxmox/instances-worker.tf | 6 ++---- proxmox/network.tf | 5 +++++ proxmox/variables.tf | 8 +++++++- 3 files changed, 14 insertions(+), 5 deletions(-) create mode 100644 proxmox/network.tf diff --git a/proxmox/instances-worker.tf b/proxmox/instances-worker.tf index 2044809..046c60b 100644 --- a/proxmox/instances-worker.tf +++ b/proxmox/instances-worker.tf @@ -1,8 +1,6 @@ locals { worker_prefix = "worker" - - zones = [for k, v in var.instances : k] workers = { for k in flatten([ for zone in local.zones : [ for inx in range(lookup(try(var.instances[zone], {}), "worker_count", 0)) : { @@ -12,7 +10,7 @@ locals { node_name : zone cpu : lookup(try(var.instances[zone], {}), "worker_cpu", 1) mem : lookup(try(var.instances[zone], {}), "worker_mem", 2048) - ipv4 : "${cidrhost(var.vpc_main_cidr, 81 + inx)}/24" + ipv4 : "${cidrhost(local.subnets[zone], inx)}/24" gwv4 : local.gwv4 } ] @@ -24,7 +22,7 @@ output "workers" { } resource "null_resource" "worker_machineconfig" { - for_each = var.instances + for_each = { for k, v in var.instances : k => v if lookup(try(var.instances[k], {}), "worker_count", 0) > 0 } connection { type = "ssh" user = "root" diff --git a/proxmox/network.tf b/proxmox/network.tf new file mode 100644 index 0000000..ed73825 --- /dev/null +++ b/proxmox/network.tf @@ -0,0 +1,5 @@ + +locals { + zones = [for k, v in var.instances : k] + subnets = { for inx, zone in local.zones : zone => cidrsubnet(var.vpc_main_cidr, 5, var.network_shift + inx) } +} diff --git a/proxmox/variables.tf b/proxmox/variables.tf index 4e0e58b..b2ca803 100644 --- a/proxmox/variables.tf +++ b/proxmox/variables.tf @@ -59,10 +59,16 @@ variable "kubernetes" { sensitive = true } +variable "network_shift" { + description = "Network number shift" + type = number + default = 6 +} + variable "vpc_main_cidr" { description = "Local proxmox subnet" type = string - default = "192.168.10.0/24" + default = "192.168.0.0/24" } variable "controlplane" {