28 Commits

Author SHA1 Message Date
de26dbe2f0 Merge pull request '[deploy-opentofu]' (#304) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#304
2025-10-15 13:23:20 +00:00
ac61fdff12 Merge pull request '[deploy-opentofu]' (#303) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#303
2025-10-15 13:18:42 +00:00
3e00706c93 Merge pull request '[deploy-opentofu]' (#302) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#302
2025-10-15 12:55:14 +00:00
2fc7391161 Merge pull request '[deploy-opentofu]' (#301) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#301
2025-10-15 12:25:22 +00:00
d279104aea [deploy-opentofu]
[deploy-opentofu]
2025-10-15 10:30:25 +00:00
c75c4869e9 Merge pull request '[deploy-opentofu]' (#299) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#299
2025-10-15 10:25:13 +00:00
13872af0ac [deploy-opentofu]
[deploy-opentofu]
2025-10-15 10:08:35 +00:00
196b851e42 [deploy-opentofu]
[deploy-opentofu]
2025-10-15 10:04:01 +00:00
8d96b54738 Merge pull request '[deploy-opentofu]' (#296) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#296
2025-10-14 22:02:17 +00:00
adbf69fefe Merge pull request '[deploy-opentofu]' (#295) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#295
2025-10-12 17:14:03 +00:00
5772fb36d2 [deploy-opentofu]
[deploy-opentofu]
2025-10-12 17:08:43 +00:00
99afd901dc Merge pull request '[deploy-opentofu]' (#293) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#293
2025-10-12 16:55:07 +00:00
8a5c2ce64c Merge pull request 'Update documentation/Dockerfile' (#292) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#292
2025-10-12 10:52:33 +00:00
453ff5202e Merge pull request '[deploy-opentofu]' (#291) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#291
2025-10-12 09:38:23 +00:00
d24306ce8c Merge pull request '[deploy-opentofu]' (#290) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#290
2025-10-12 09:13:12 +00:00
b2533ac7cb Merge pull request '[deploy-opentofu]' (#289) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#289
2025-10-12 09:08:43 +00:00
00239da11c Merge pull request '[deploy-opentofu]' (#288) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#288
2025-10-12 09:04:09 +00:00
9911825872 Merge pull request '[deploy-opentofu]' (#287) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#287
2025-10-12 09:00:39 +00:00
1e0110fe1a Merge pull request '[deploy-opentofu]' (#286) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#286
2025-10-11 22:50:43 +00:00
5a24f06fd8 Merge pull request '[deploy-opentofu]' (#285) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#285
2025-10-11 22:37:41 +00:00
11e8997be8 Merge pull request '[deploy-opentofu]' (#284) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#284
2025-10-11 22:34:18 +00:00
d4811cbcfe Merge pull request '[deploy-opentofu]' (#283) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#283
2025-10-11 22:22:27 +00:00
6258d9e279 Merge pull request '[deploy-opentofu]' (#282) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#282
2025-10-11 22:13:01 +00:00
eaadf11a99 Merge pull request '[deploy-opentofu]' (#281) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#281
2025-10-11 22:09:51 +00:00
50e52fb839 Merge pull request '[deploy-opentofu]' (#280) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#280
2025-10-11 21:52:25 +00:00
43bd8914aa Merge pull request '[deploy-opentofu]' (#279) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#279
2025-10-11 21:44:21 +00:00
c457178d48 Merge pull request '[deploy-opentofu]' (#278) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#278
2025-10-11 21:33:00 +00:00
01d40d4120 Merge pull request '[deploy-opentofu]' (#277) from fenix-admin into dev
Reviewed-on: fenix-gitea-admin/iac-opentofu-private#277
2025-10-11 21:26:08 +00:00
8 changed files with 24 additions and 47 deletions

View File

@ -2,7 +2,7 @@ https://spacelift.io/blog/opentofu-tutorial - explaining language of opentofu
https://opentofu.org/docs/intro/ - quick start and explaning who to work in team
https://opentofu.org/docs/intro/ - CICD for opentofu explained
https://opentofu.org/docs/intro/ - CICD for opentofu explained

View File

@ -1,5 +1,5 @@
#!/usr/bin/env python3
from ruamel.yaml import YAML
from ruamel.yaml import YAML
import sys
import json
from collections.abc import Mapping

View File

@ -19,7 +19,7 @@ resource "proxmox_virtual_environment_download_file" "latest_ubunto_cloud_img" {
content_type = "iso"
datastore_id = "local"
node_name = "fenix"
url = "https://cloud-images.ubuntu.com/jammy/20251206/jammy-server-cloudimg-amd64.img"
url = "https://cloud-images.ubuntu.com/jammy/20250725/jammy-server-cloudimg-amd64.img"
file_name = "jammyservercloudimgamd64.img"
}
@ -105,7 +105,6 @@ resource "proxmox_virtual_environment_vm" "proxmox-kubernetes-VM-template" {
cpu {
cores = 2
type = "host"
}
memory {
@ -117,14 +116,16 @@ resource "proxmox_virtual_environment_vm" "proxmox-kubernetes-VM-template" {
file_id = proxmox_virtual_environment_download_file.latest_ubunto_cloud_img.id
interface = "scsi0"
file_format = "qcow2"
size = 64
}
# Configuração da interface de rede
network_device {
bridge = "vmbr0" # rede de gestão para comunicação com Cluster B
bridge = "vmbr0" # rede de gestão para comunicação com Cluster A
}
network_device {
bridge = "vmbr2"
}
initialization {
dns {
servers = ["1.1.1.1"]
@ -135,6 +136,11 @@ initialization {
}
}
ip_config {
ipv4 {
address = "dhcp"
}
}
user_data_file_id = proxmox_virtual_environment_file.cloud_init_yaml.id
}
}
@ -149,12 +155,10 @@ resource "proxmox_virtual_environment_vm" "k8s_vms" {
clone {
vm_id = proxmox_virtual_environment_vm.proxmox-kubernetes-VM-template.id
full = true
}
cpu {
cores = each.value.cores
type = "host"
}
memory {
@ -167,16 +171,6 @@ resource "proxmox_virtual_environment_vm" "k8s_vms" {
interface = "scsi1"
}
# Bloco dinâmico para lista de hostpci
dynamic "hostpci" {
for_each = try(each.value.hostpci, [])
content {
device = hostpci.value.device
pcie = try(hostpci.value.pcie, true)
mapping = hostpci.value.mapping
}
}
initialization {
ip_config {
ipv4 {
@ -184,6 +178,12 @@ resource "proxmox_virtual_environment_vm" "k8s_vms" {
gateway = each.value.gateway
}
}
ip_config {
ipv4 {
address = each.value.ip2
gateway = each.value.gateway
}
}
user_data_file_id = proxmox_virtual_environment_file.vm_user_data[each.key].id
}

View File

@ -41,12 +41,6 @@ variable "proxmox_k8s_vms" {
node_name = string
ip = string
ip2 = string
ip3 = string
hostpci = optional(list(object({
pcie = bool
device = string
mapping = string
})))
cores = optional(number)
memory = optional(number)
data_store = optional(string)

View File

@ -1,13 +0,0 @@
[master]
master1 ansible_host=192.168.1.99 ansible_user=user ansible_ssh_pass=pass ansible_ssh_common_args='-o StrictHostKeyChecking=no'
[workers]
worker-192-168-1-101 ansible_host=192.168.1.101 ansible_user=user ansible_ssh_pass=pass ansible_ssh_common_args='-o StrictHostKeyChecking=no'

View File

@ -1 +0,0 @@
proxmox-ssh.example.com

View File

@ -1 +0,0 @@
https://vaultwarden.example.com

View File

@ -1,6 +1,6 @@
#proxmox_server = "proxmox.example.com"
#PM_API_TOKEN_ID = "tokenid"
#PM_API_TOKEN_SECRET = "tokensecret"
proxmox_server = "proxmox.example.com"
PM_API_TOKEN_ID = "tokenid"
PM_API_TOKEN_SECRET = "tokensecret"
# tokenid is read automatically from PM_API_TOKEN_ID
# token is read automatically from PM_API_TOKEN_SECRET
@ -20,7 +20,6 @@ proxmox_k8s_vms = [
vm_id = 3001
node_name = "node"
ip = "192.168.1.99/24"
ip3 = "192.168.1.199/24"
cores = 2
memory = 2000
disk_size = 32
@ -34,14 +33,13 @@ proxmox_k8s_vms = [
}
]
extra_packages = []
extra_runcmd = ["sudo ip addr add 192.168.1.199/24 dev eth0"]
extra_runcmd = []
},
{
name = "k8s-worker-01"
vm_id = 3002
node_name = "node"
ip = "192.168.1.101/24"
ip3 = "192.168.1.201/24"
cores = 1
memory = 2000
disk_size = 32
@ -55,6 +53,6 @@ proxmox_k8s_vms = [
}
]
extra_packages = []
extra_runcmd = ["sudo ip addr add 192.168.1.201/24 dev eth0"]
extra_runcmd = []
},
]