Créer un template Linux cloud-init pour Proxmox

Préparer une VM Debian comme template Proxmox compatible cloud-init et Terraform — packages indispensables, nettoyage et reset pour le clonage.
17 March 2026 348 words Reading: 2 min Authors:
  • Loïs Dutour
Proxmox Debian Terraform Ansible

Un template Proxmox bien préparé est la base d’un déploiement IaC propre. Ce guide couvre les packages indispensables et le nettoyage nécessaire avant de convertir une VM en template.


Packages indispensables

QEMU Guest Agent

Permet à Proxmox de remonter les IPs des VMs dans l’interface web et d’interagir avec le système invité (snapshot cohérents, shutdown propre).

apt install qemu-guest-agent
systemctl enable --now qemu-guest-agent

Cloud-init

Permet à la VM de lire la configuration envoyée depuis Terraform au premier démarrage (IP, hostname, clé SSH, utilisateur).

apt install cloud-init

SSH Server

Requis pour qu’Ansible puisse se connecter et configurer la VM.

apt install openssh-server
systemctl enable --now sshd

Python 3

Requis par Ansible pour exécuter ses modules.

apt install python3

sudo

Requis pour l’élévation de privilèges via Ansible.

apt install sudo

Nettoyage avant conversion en template

Ces étapes sont obligatoires — sans elles, toutes les VMs clonées depuis ce template auront le même machine-id et les mêmes clés SSH hôtes, ce qui causera des conflits réseau et SSH.

apt update && apt install -y qemu-guest-agent cloud-init python3 sudo
systemctl enable qemu-guest-agent

# Supprimer l'utilisateur temporaire si créé pendant l'install
deluser --remove-home tpl_adm

# Reset du machine-id (doit être unique par VM)
truncate -s 0 /etc/machine-id
ln -sf /etc/machine-id /var/lib/dbus/machine-id

# Supprimer les clés SSH hôtes (régénérées au premier démarrage)
rm -f /etc/ssh/ssh_host_*

# Reset cloud-init
cloud-init clean --logs

# Nettoyage
apt clean
history -c

# Éteindre (ne pas redémarrer — convertir en template depuis Proxmox)
poweroff

⚠️ Une fois la VM éteinte, convertis-la en template depuis l’interface Proxmox : clic droit sur la VM → Convert to Template. Ne la redémarre pas avant — cloud-init se réinitialiserait.


Dépôts Debian 13 (Trixie)

Si les miroirs sont manquants ou incorrects :

cat << EOF > /etc/apt/sources.list
# Miroirs officiels Debian 13 (Trixie)
deb http://deb.debian.org/debian/ trixie main contrib non-free non-free-firmware
deb-src http://deb.debian.org/debian/ trixie main contrib non-free non-free-firmware

# Mises à jour de sécurité
deb http://security.debian.org/debian-security trixie-security main contrib non-free non-free-firmware
deb-src http://security.debian.org/debian-security trixie-security main contrib non-free non-free-firmware

# Mises à jour "updates"
deb http://deb.debian.org/debian/ trixie-updates main contrib non-free non-free-firmware
deb-src http://deb.debian.org/debian/ trixie-updates main contrib non-free non-free-firmware
EOF
apt update