# Playbooks Proxmox Ces playbooks pilotent Proxmox par API depuis le poste Ansible. Les valeurs Cloud-Init communes déjà définies sur le modèle Proxmox sont héritées par les clones. Set-OPS ne les redemande pas. ## Prérequis du poste Ansible Le clonage Proxmox utilise les modules `community.general.proxmox_*`. Le poste Ansible doit donc avoir : - la collection Ansible `community.general` ; - la bibliothèque Python `proxmoxer` disponible dans le Python utilisé par Ansible. Sur Debian, installer généralement : ```bash sudo apt install python3-proxmoxer ``` Vérification locale : ```bash python3 -c 'import proxmoxer' ``` Les paramètres non sensibles sont dans : ```text inventories/lab/group_vars/proxmox.yml ``` Assistant terminal : ```bash make config ``` Les secrets d'API doivent être dans un fichier Vault non versionné : ```text inventories/lab/group_vars/proxmox.vault.yml ``` Créer le fichier depuis l'exemple, puis le chiffrer : ```bash cp inventories/lab/group_vars/proxmox.vault.yml.example inventories/lab/group_vars/proxmox.vault.yml ansible-vault encrypt inventories/lab/group_vars/proxmox.vault.yml ``` Créer un clone Debian depuis le modèle : ```bash make creer-vm \ HOTE=web-01 \ VMID=101 \ VLAN=12 \ ADRESSE_IP=192.168.12.101 \ PASSERELLE=192.168.12.1 \ GROUPES="serveurs_debian serveurs_durcis" ``` `VLAN` doit être saisi à chaque création de VM pour éviter de réutiliser par erreur un réseau d'un autre clone. Le disque du clone hérite de la taille du modèle. Pour l'agrandir à la création, fournir explicitement une taille supérieure à celle du modèle : ```bash make creer-vm HOTE=web-01 VMID=101 VLAN=12 ADRESSE_IP=192.168.12.101 PASSERELLE=192.168.12.1 TAILLE_DISQUE=64G GROUPES="serveurs_debian serveurs_durcis" ``` Proxmox ne permet pas de réduire un disque existant. `creer-vm` clone la VM, applique les paramètres Cloud-Init et ajoute l'hôte à l'inventaire. La conformité Ansible reste séparée : ```bash make deployer HOTE=web-01 ```