mirror of
https://github.com/vhaudiquet/homeprod.git
synced 2025-12-18 12:06:05 +00:00
96 lines
1.7 KiB
HCL
96 lines
1.7 KiB
HCL
resource "proxmox_virtual_environment_download_file" "talos-cloudimg" {
|
|
content_type = "iso"
|
|
datastore_id = "local"
|
|
file_name = "talos-v1.11.1-nocloud-amd64.iso"
|
|
node_name = var.proxmox_node_name
|
|
url = "https://factory.talos.dev/image/ce4c980550dd2ab1b17bbf2b08801c7eb59418eafe8f279833297925d67c7515/v1.11.5/nocloud-amd64.iso"
|
|
}
|
|
|
|
resource "proxmox_virtual_environment_vm" "kube" {
|
|
name = "kube-${var.proxmox_node_name}"
|
|
description = "Kubernetes Talos Linux"
|
|
tags = ["kubernetes", "talos", "terraform"]
|
|
|
|
node_name = var.proxmox_node_name
|
|
vm_id = 702
|
|
machine = "q35"
|
|
keyboard_layout = "fr"
|
|
|
|
agent {
|
|
enabled = true
|
|
}
|
|
stop_on_destroy = true
|
|
|
|
cpu {
|
|
cores = 20
|
|
sockets = 1
|
|
type = "host"
|
|
}
|
|
|
|
memory {
|
|
dedicated = 32768
|
|
floating = 16192
|
|
}
|
|
|
|
boot_order = ["scsi0", "ide0"]
|
|
scsi_hardware = "virtio-scsi-single"
|
|
|
|
cdrom {
|
|
file_id = proxmox_virtual_environment_download_file.talos-cloudimg.id
|
|
interface = "ide0"
|
|
}
|
|
|
|
disk {
|
|
interface = "scsi0"
|
|
iothread = true
|
|
datastore_id = "local-lvm"
|
|
size = 128
|
|
discard = "ignore"
|
|
file_format = "raw"
|
|
}
|
|
|
|
vga {
|
|
type = "serial0"
|
|
}
|
|
|
|
initialization {
|
|
datastore_id = "local-lvm"
|
|
interface = "ide2"
|
|
|
|
ip_config {
|
|
ipv4 {
|
|
address = "dhcp"
|
|
}
|
|
}
|
|
|
|
user_account {
|
|
keys = [trimspace(var.ssh_public_key)]
|
|
password = var.machine_root_password
|
|
username = "root"
|
|
}
|
|
}
|
|
|
|
lifecycle {
|
|
ignore_changes = [
|
|
ipv4_addresses, ipv6_addresses, network_interface_names
|
|
]
|
|
}
|
|
|
|
network_device {
|
|
bridge = "vmbr0"
|
|
model = "virtio"
|
|
# mac_address = "BC:24:11:F6:E1:C9"
|
|
vlan_id = 2
|
|
}
|
|
|
|
operating_system {
|
|
type = "l26"
|
|
}
|
|
|
|
tpm_state {
|
|
version = "v2.0"
|
|
}
|
|
|
|
serial_device {}
|
|
}
|