Обновить terraform/main.tf

This commit is contained in:
2025-12-28 10:07:52 +00:00
parent c6f508c221
commit 91a91dc26a

View File

@@ -1,13 +1,36 @@
terraform {
required_providers {
# Мы называем локальный алиас "proxmox"
proxmox = {
source = "bpg/proxmox"
version = "0.70.0"
}
}
backend "http" {}
}
provider "proxmox" {
endpoint = var.proxmox_api_url
api_token = "${var.proxmox_api_token_id}=${var.proxmox_api_token_secret}"
insecure = true
ssh {
agent = false
}
}
resource "proxmox_virtual_machine" "k8s_nodes" { resource "proxmox_virtual_machine" "k8s_nodes" {
# Явно указываем, какой провайдер использовать для этого ресурса
provider = proxmox
for_each = var.vm_nodes for_each = var.vm_nodes
node_name = "pve-main" node_name = "pve"
name = each.value.name name = each.value.name
vm_id = each.value.id vm_id = each.value.id
# Указываем клонирование шаблона # Мы перешли на клонирование шаблона (Шаг 9000 из прошлой инструкции)
clone { clone {
vm_id = 9000 # ID шаблона, который мы создали выше vm_id = 9000
} }
cpu { cpu {
@@ -23,15 +46,13 @@ resource "proxmox_virtual_machine" "k8s_nodes" {
bridge = "vmbr0" bridge = "vmbr0"
} }
# Диск теперь настраивается через переопределение диска шаблона
disk { disk {
datastore_id = "local-lvm" datastore_id = "local-lvm"
interface = "scsi0" # Тот же интерфейс, что в шаблоне interface = "scsi0"
size = 20 size = 20
} }
initialization { initialization {
# Эти параметры Cloud-Init применит к склонированной машине
ip_config { ip_config {
ipv4 { ipv4 {
address = "${each.value.ip}/24" address = "${each.value.ip}/24"
@@ -40,7 +61,7 @@ resource "proxmox_virtual_machine" "k8s_nodes" {
} }
user_account { user_account {
username = "ubuntu" username = "ubuntu"
keys = ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPkMcT6PGm4xwBlwwwLkzdzTF/pgtADIcdejf5xALbxQ semaphore-gitea-key"] # Твой ключ keys = ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPkMcT6PGm4xwBlwwwLkzdzTF/pgtADIcdejf5xALbxQ semaphore-gitea-key"]
} }
} }
} }