diff options
Diffstat (limited to 'terraform')
| -rw-r--r-- | terraform/main.tf | 14 | ||||
| -rw-r--r-- | terraform/modules/observability/main.tf | 54 | ||||
| -rw-r--r-- | terraform/modules/observability/outputs.tf | 0 | ||||
| -rw-r--r-- | terraform/modules/observability/variables.tf | 26 |
4 files changed, 88 insertions, 6 deletions
diff --git a/terraform/main.tf b/terraform/main.tf index fc10416..3969b4c 100644 --- a/terraform/main.tf +++ b/terraform/main.tf @@ -14,9 +14,11 @@ module "eveng" { cpu_cores = 4 } -# module "observability_stack" { -# source = "./modules/observability" -# node_name = var.node_name -# lxc_id = 203 -# network_bridge = "vmbr0" -# } +module "observability" { + source = "./modules/observability" + node_name = var.node_name + lxc_id = 203 + + ip_address = "192.168.0.120/24" + gateway_ip = "192.168.0.1" +} diff --git a/terraform/modules/observability/main.tf b/terraform/modules/observability/main.tf new file mode 100644 index 0000000..9f9e6c2 --- /dev/null +++ b/terraform/modules/observability/main.tf @@ -0,0 +1,54 @@ +terraform { + required_providers { + proxmox = { + source = "bpg/proxmox" + version = "~> 0.83" + } + } +} + +resource "proxmox_virtual_environment_container" "lgtm" { + node_name = var.node_name + vm_id = var.lxc_id + started = true + + operating_system { + template_file_id = "local:vztmpl/debian-12-standard_12.12-1_amd64.tar.zst" + type = "debian" + } + + cpu { + cores = 2 + } + + memory { + dedicated = 2048 + swap = 512 + } + + disk { + datastore_id = "local-lvm" + size = 10 + } + + network_interface { + name = "eth0" + bridge = "vmbr0" + } + + initialization { + hostname = var.hostname + + ip_config { + ipv4 { + address = var.ip_address + gateway = var.gateway_ip + } + } + + user_account { + keys = var.ssh_keys + } + } +} + diff --git a/terraform/modules/observability/outputs.tf b/terraform/modules/observability/outputs.tf new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/terraform/modules/observability/outputs.tf diff --git a/terraform/modules/observability/variables.tf b/terraform/modules/observability/variables.tf new file mode 100644 index 0000000..fb998c8 --- /dev/null +++ b/terraform/modules/observability/variables.tf @@ -0,0 +1,26 @@ +variable "node_name" { + type = string +} + +variable "lxc_id" { + type = number +} + +variable "hostname" { + type = string + default = "lgtm-stack" +} + +variable "ip_address" { + type = string +} + +variable "gateway_ip" { + type = string + default = "192.168.0.1" +} + +variable "ssh_keys" { + type = list(string) + default = ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHB4jD3PVsg1edlMwBW6Hb/NYLnzEI8dyJQRnQQap45q enrico@cachyos"] +} |