63 lines
1.1 KiB
HCL
63 lines
1.1 KiB
HCL
terraform {
|
|
required_providers {
|
|
proxmox = {
|
|
source = "bpg/proxmox"
|
|
version = "0.90.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_environment_vm" "k8s_nodes" {
|
|
for_each = var.vm_nodes
|
|
node_name = "pve-main"
|
|
|
|
name = each.value.name
|
|
vm_id = each.value.id
|
|
|
|
clone {
|
|
vm_id = 9000
|
|
}
|
|
|
|
cpu {
|
|
cores = 2
|
|
type = "x86-64-v2-AES"
|
|
}
|
|
|
|
memory {
|
|
dedicated = 4096
|
|
}
|
|
|
|
# ИСПРАВЛЕНО: Было network_interface, теперь network_device
|
|
network_device {
|
|
bridge = "vmbr0"
|
|
}
|
|
|
|
disk {
|
|
datastore_id = "local-lvm"
|
|
interface = "scsi0"
|
|
size = 20
|
|
}
|
|
|
|
initialization {
|
|
ip_config {
|
|
ipv4 {
|
|
address = "${each.value.ip}/24"
|
|
gateway = "10.33.33.1"
|
|
}
|
|
}
|
|
user_account {
|
|
username = "ubuntu"
|
|
keys = ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJq5Wc9rpjN1KOoI721NwjTZuGPicLkpHHdeX64Icyev semaphore-ansible-key"]
|
|
}
|
|
}
|
|
} |