# 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-frontal-01 \ VMID=95301 \ VLAN=15 \ ADRESSE_IP=10.1.15.31 \ PASSERELLE=10.1.15.1 \ GROUPES="serveur_debian serveur_durci" ``` `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-frontal-01 VMID=95301 VLAN=15 ADRESSE_IP=10.1.15.31 PASSERELLE=10.1.15.1 TAILLE_DISQUE=64G GROUPES="serveur_debian serveur_durci" ``` 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-frontal-01 ```