Terraform + Proxmox
Déploiement de VMs sur proxmox avec terraform à partir d'un template CloudInit
Prérequis
Création du rôle et de l'utilisateur Proxmox pour Terraform (via CLI)
Créer un rôle Terraform avec les droits nécessaires
pveum role add TerraformProv -privs "Datastore.AllocateSpace Datastore.AllocateTemplate Datastore.Audit Pool.Allocate Sys.Audit Sys.Console Sys.Modify VM.Allocate VM.Audit VM.Clone VM.Config.CDROM VM.Config.Cloudinit VM.Config.CPU VM.Config.Disk VM.Config.HWType VM.Config.Memory VM.Config.Network VM.Config.Options VM.Migrate VM.Monitor VM.PowerMgmt SDN.Use"Créer l'utilisateur Terraform
pveum user add terraform-prov@pve --password <votre_mot_de_passe>Associer le rôle à l'utilisateur sur tout le cluster
Génération du Token API
Configuration des variables d’environnement
Création du template cloudinit:
✅1. Télécharger une ISO Debian Cloud-Init Ready
✅ 2. Créer une VM dans Proxmox (sans ISO) en CLI
✅ 3. Importer l’image disque téléchargée
✅ 4. Ajouter le disque Cloud-Init
✅ 5. Configurer le boot & autres options
✅ 6. Convertir en template
🔁 Ensuite dans Terraform
🧼 Bonus : nettoyage au besoin
Création d'une clé ssh
Création des fichiers de configs terraform
main.tf
data.tf
variables.tf
outputs.tf
vm.tf
Déploiement
Last updated
