Files
infrastructure/terraform/locals.tf

31 lines
1.7 KiB
HCL

locals {
# SSH Public Key for Provisioning
ssh_key = var.use_vault ? data.vault_kv_secret_v2.vm_creds[0].data["ssh_public_key"] : var.ssh_public_key
# CI Credentials
ci_user = var.use_vault ? data.vault_kv_secret_v2.vm_creds[0].data["ci_user"] : var.ci_user
ci_password = var.use_vault ? data.vault_kv_secret_v2.vm_creds[0].data["ci_password"] : var.ci_password
vms = {
# VLAN 30: Docker
"vm-docker-mailcow-300" = { id = 300, cores = 4, memory = 8192, vlan = 30, tags = "docker,mailcow", ip = "10.100.30.10", gw = "10.100.30.1" }
"vm-docker-apps-301" = { id = 301, cores = 2, memory = 4096, vlan = 30, tags = "docker,apps", ip = "10.100.30.11", gw = "10.100.30.1" }
# vm-docker-traefik-302 entfernt (Traefik Edge läuft jetzt im k3s Cluster)
# VLAN 40: K3s (HA Control Plane)
"vm-k3s-master-400" = { id = 400, cores = 4, memory = 16000, vlan = 40, tags = "k3s,master", ip = "10.100.40.10", gw = "10.100.40.1" }
"vm-k3s-master-401" = { id = 401, cores = 4, memory = 16000, vlan = 40, tags = "k3s,master", ip = "10.100.40.11", gw = "10.100.40.1" }
"vm-k3s-master-402" = { id = 402, cores = 4, memory = 16000, vlan = 40, tags = "k3s,master", ip = "10.100.40.12", gw = "10.100.40.1" }
# VLAN 90: Bastion
"vm-bastion-900" = { id = 900, cores = 1, memory = 2048, vlan = 90, tags = "bastion", ip = "10.100.90.10", gw = "10.100.90.1" }
"vm-bastion-901" = { id = 901, cores = 1, memory = 2048, vlan = 90, tags = "bastion", ip = "10.100.90.11", gw = "10.100.90.1" }
}
# Extra DNS entries for VIPs (Virtual IPs)
extra_dns = {
"k3s-api" = { ip = "10.100.40.5", tags = "k3s,vip,api" }
"k3s-ingress" = { ip = "10.100.40.6", tags = "k3s,vip,ingress" }
}
}