Ajout de terraform
parent
bb49a010d0
commit
d9d6afae2d
|
|
@ -0,0 +1,65 @@
|
|||
resource "proxmox_vm_qemu" "control_plane" {
|
||||
count = 1
|
||||
name = "control-plane-${count.index}.k8s.cluster"
|
||||
target_node = "${var.pm_node}"
|
||||
|
||||
clone = "debian-11-cloudinit-template"
|
||||
|
||||
os_type = "cloud-init"
|
||||
cores = 4
|
||||
sockets = "1"
|
||||
cpu = "host"
|
||||
memory = 2048
|
||||
scsihw = "virtio-scsi-pci"
|
||||
bootdisk = "scsi0"
|
||||
|
||||
disk {
|
||||
size = "20G"
|
||||
type = "scsi"
|
||||
storage = "local-lvm"
|
||||
iothread = 1
|
||||
}
|
||||
|
||||
network {
|
||||
model = "virtio"
|
||||
bridge = "vmbr0"
|
||||
}
|
||||
|
||||
# cloud-init settings
|
||||
# adjust the ip and gateway addresses as needed
|
||||
ipconfig0 = "ip=192.168.0.11${count.index}/24,gw=192.168.0.1"
|
||||
sshkeys = file("${var.ssh_key_file}")
|
||||
}
|
||||
|
||||
resource "proxmox_vm_qemu" "worker_nodes" {
|
||||
count = 3
|
||||
name = "worker-${count.index}.k8s.cluster"
|
||||
target_node = "${var.pm_node}"
|
||||
|
||||
clone = "debian-11-cloudinit-template"
|
||||
|
||||
os_type = "cloud-init"
|
||||
cores = 4
|
||||
sockets = "1"
|
||||
cpu = "host"
|
||||
memory = 4098
|
||||
scsihw = "virtio-scsi-pci"
|
||||
bootdisk = "scsi0"
|
||||
|
||||
disk {
|
||||
size = "20G"
|
||||
type = "scsi"
|
||||
storage = "local-lvm"
|
||||
iothread = 1
|
||||
}
|
||||
|
||||
network {
|
||||
model = "virtio"
|
||||
bridge = "vmbr0"
|
||||
}
|
||||
|
||||
# cloud-init settings
|
||||
# adjust the ip and gateway addresses as needed
|
||||
ipconfig0 = "ip=192.168.0.12${count.index}/24,gw=192.168.0.1"
|
||||
sshkeys = file("${var.ssh_key_file}")
|
||||
}
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
terraform {
|
||||
required_providers {
|
||||
proxmox = {
|
||||
source = "telmate/proxmox"
|
||||
version = "2.9.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
provider "proxmox" {
|
||||
pm_parallel = 1
|
||||
pm_tls_insecure = true
|
||||
pm_api_url = var.pm_api_url
|
||||
pm_password = var.pm_password
|
||||
pm_user = var.pm_user
|
||||
}
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
variable "pm_api_url" {
|
||||
default = "https://proxmox.local:8006/api2/json"
|
||||
}
|
||||
|
||||
variable "pm_node" {
|
||||
default = "vm"
|
||||
}
|
||||
|
||||
variable "pm_user" {
|
||||
default = ""
|
||||
}
|
||||
|
||||
variable "pm_password" {
|
||||
default = ""
|
||||
}
|
||||
|
||||
variable "ssh_key_file" {
|
||||
default = "~/.ssh/id_rsa.pub"
|
||||
}
|
||||
Loading…
Reference in New Issue