Перейти к основному содержимому
Background Image
  1. Статьи/

Автоматическая установка нескольких виртуальных машин в Proxmox 9.0.3 с помощью Terraform в Docker

·183 слов·1 минута· loading · loading · ·
Stilicho2011
Автор
Stilicho2011
Пишу о homelab, self-hosting, автоматизации и open-source решениях
Автоматизация в Proxmox - This article is part of a series.
Part : This Article

Ниже приведен файл, который я использовал в ролике, посвященный установке и развертыванию сразу трех виртуальных машин с помощью Terraform

variable vm_configs {
  type = map(object({
      vm_id = number
      name = string
      cores = number
      memory = number
      vm_state = string 
  }))
  default = {
      "youtube-1" = { vm_id = 357, name = "youtube-1", cores = 1, memory = 2048, vm_state = "stopped"}
      "youtube-2" = { vm_id = 358, name = "youtube-2", cores = 1, memory = 4096, vm_state = "stopped"}   
      "youtube-3" = { vm_id = 359, name = "youtube-3", cores = 1, memory = 2048, vm_state = "running"}
  }
}

resource "proxmox_vm_qemu" "youtubetestvms" {
  for_each = var.vm_configs
  vmid        = each.value.vm_id
  name        = each.value.name
  target_node = "belisarius"
  clone       = "ubuntutemplate"
  full_clone  = true
  bios        = "ovmf"
  agent       = 1 
  scsihw      = "virtio-scsi-single"
  os_type     = "ubuntu"
  cpu_type    = "x86-64-v2-AES"
  cores       = each.value.cores
  sockets     = 1
  memory      = each.value.memory 

  vm_state = each.value.vm_state


  disks {
    scsi {
      scsi0 {
        disk {
          size    = "32G"
          storage = "local"
          format  = "qcow2"
        }
      }
    }
  }

  network {
    id     = 0
    model  = "virtio"
    bridge = "vmbr0"
  }
}
Автоматизация в Proxmox - This article is part of a series.
Part : This Article