64 lines
1.2 KiB
HCL
64 lines
1.2 KiB
HCL
resource "proxmox_virtual_environment_vm" "this" {
|
|
name = var.name
|
|
node_name = var.target_node
|
|
|
|
clone {
|
|
vm_id = var.template_id
|
|
full = true
|
|
}
|
|
|
|
cpu {
|
|
cores = var.cpu
|
|
type = var.cpu_type
|
|
}
|
|
|
|
memory {
|
|
dedicated = var.memory
|
|
}
|
|
|
|
# Предсказуемая SCSI нумерация
|
|
scsi_hardware = "virtio-scsi-single"
|
|
boot_order = ["scsi0"]
|
|
|
|
# OS disk (scsi0)
|
|
disk {
|
|
datastore_id = var.storage
|
|
size = var.disk_size
|
|
interface = "scsi0"
|
|
}
|
|
|
|
# OSD disks (scsi1, scsi2, ...)
|
|
dynamic "disk" {
|
|
for_each = (var.osd_storage != null && length(var.osd_disks) > 0) ? { for idx, size in var.osd_disks : idx => size } : {}
|
|
|
|
content {
|
|
datastore_id = var.osd_storage
|
|
size = disk.value
|
|
interface = "scsi${disk.key + 1}"
|
|
|
|
file_format = "raw"
|
|
cache = "none"
|
|
iothread = true
|
|
discard = "on"
|
|
}
|
|
}
|
|
|
|
network_device {
|
|
bridge = var.bridge
|
|
model = "virtio"
|
|
mac_address = var.mac_address
|
|
}
|
|
|
|
agent {
|
|
enabled = true
|
|
}
|
|
|
|
initialization {
|
|
user_data_file_id = var.user_data_file_id
|
|
|
|
ip_config {
|
|
ipv4 { address = "dhcp" }
|
|
}
|
|
}
|
|
}
|