Cheat Sheet Proxmox

pvecm — Gestion du cluster#

Commande Arguments principaux Description Points d'attention / Remarques
pvecm status Affiche le statut du cluster Corosync Indispensable pour diagnostiquer un split-brain
pvecm nodes Liste les nœuds membres du cluster
pvecm add <IP> --nodeid, --votes Ajoute un nœud au cluster Le nœud cible doit être vierge de toute config cluster
pvecm delnode <nom> Supprime un nœud du cluster Ne pas exécuter sur le nœud à supprimer lui-même
pvecm expected 1 Force le quorum à 1 nœud Uniquement en cas de perte de nœuds, jamais en prod normale

pvesh — API REST en CLI#

Commande Arguments principaux Description Points d'attention / Remarques
pvesh get /nodes Liste les nœuds du cluster via l'API REST Utile pour scripter sans passer par curl
pvesh get /cluster/status Statut global du cluster Vérifie quorum et santé des nœuds
pvesh get /nodes/<node>/qemu Liste les VMs d'un nœud via API
pvesh get /nodes/<node>/lxc Liste les CTs d'un nœud via API
pvesh get /storage Liste les stockages configurés
pvesh create /nodes/<node>/qemu/<vmid>/status/start Démarre une VM via API Toutes les actions GUI sont disponibles via pvesh
pvesh delete /nodes/<node>/qemu/<vmid> --purge Supprime une VM via API

pvenode — Configuration d'un nœud#

Commande Arguments principaux Description Points d'attention / Remarques
pvenode config set --wakeonlan, --description, --acme Configure les paramètres du nœud local
pvenode config get Affiche la configuration du nœud
pvenode cert info Affiche le certificat TLS du nœud
pvenode acme cert order Commande/renouvelle un certificat ACME Le domaine doit être résolvable et le port 80 accessible
pvenode acme cert renew Renouvelle le certificat ACME existant
pvenode acme account list Liste les comptes ACME configurés

pvesm — Gestion du stockage#

Commande Arguments principaux Description Points d'attention / Remarques
pvesm status Liste les stockages et leur disponibilité
pvesm list <storage> --vmid, --content Liste le contenu d'un stockage --content : images, rootdir, backup, iso, snippets
pvesm add <type> <storage> --path, --server, --export, --content Ajoute un stockage Types : dir, nfs, cifs, zfspool, lvm, rbd, pbs...
pvesm remove <storage> Supprime un stockage de la config Ne supprime pas les données
pvesm scan zfs Scanne les pools ZFS disponibles
pvesm scan nfs <host> Scanne les exports NFS d'un hôte
pvesm scan iscsi <host> Scanne les targets iSCSI d'un hôte
pvesm alloc <storage> <vmid> <volname> <size> Alloue manuellement un volume
pvesm free <storage>:<volname> Libère un volume Suppression définitive

pveum — Utilisateurs & sécurité#

Commande Arguments principaux Description Points d'attention / Remarques
pveum user list Liste les utilisateurs PVE
pveum user add <user@realm> --password, --groups, --comment Ajoute un utilisateur Format obligatoire : user@pam ou user@pve
pveum user modify <user@realm> --password, --groups, --enable Modifie un utilisateur
pveum user delete <user@realm> Supprime un utilisateur
pveum group add <groupe> --comment Crée un groupe
pveum group list Liste les groupes
pveum group delete <groupe> Supprime un groupe
pveum acl modify <path> --roles, --users, --groups Modifie les ACL sur un chemin Path : /, /vms/<id>, /storage/<id>, /nodes/<node>
pveum acl delete <path> --roles, --users Supprime une ACL
pveum role add <role> --privs Crée un rôle custom
pveum role list Liste les rôles disponibles
pveum role modify <role> --privs Modifie les privilèges d'un rôle
pveum realm list Liste les royaumes d'authentification
pveum realm add <realm> --type, --server Ajoute un royaume (LDAP, AD...) Types : pam, pve, ldap, ad, openid
pveum passwd <user@realm> Change le mot de passe d'un utilisateur

pve-firewall — Pare-feu#

Commande Arguments principaux Description Points d'attention / Remarques
pve-firewall start Active le pare-feu PVE sur le nœud
pve-firewall stop Désactive le pare-feu PVE Toutes les règles sont supprimées immédiatement
pve-firewall restart Redémarre le pare-feu
pve-firewall status Statut du pare-feu
pve-firewall compile Compile et vérifie les règles sans les appliquer Très utile pour débugger avant activation
pve-firewall localnet Affiche les réseaux locaux détectés Utilisé pour les règles automatiques

ha-manager — Haute disponibilité#

Commande Arguments principaux Description Points d'attention / Remarques
ha-manager status Statut global du gestionnaire HA
ha-manager add <resource> --group, --max_restart, --max_relocate Ajoute une ressource à la HA Format : vm:<vmid> ou ct:<ctid>
ha-manager remove <resource> Retire une ressource de la HA
ha-manager set <resource> --state Change l'état désiré d'une ressource États : started, stopped, enabled, disabled, ignored
ha-manager config Affiche la config HA complète
ha-manager crm-command node-maintenance enable <node> Active le mode maintenance HA sur un nœud Migre automatiquement les ressources HA
ha-manager crm-command node-maintenance disable <node> Désactive le mode maintenance HA Les ressources ne reviennent pas automatiquement

Machines virtuelles#

Commande Arguments principaux Description Points d'attention / Remarques
qm list Liste toutes les VMs avec leur statut
qm start <vmid> Démarre une VM
qm stop <vmid> --skiplock Arrêt brutal d'une VM Préférer shutdown pour un arrêt propre
qm shutdown <vmid> --timeout <sec> Arrêt gracieux via signal ACPI Nécessite guest agent ou ACPI fonctionnel
qm reset <vmid> Reset brutal d'une VM Risque de corruption FS
qm reboot <vmid> Redémarre proprement une VM Passe par l'OS invité
qm suspend <vmid> --todisk Suspend une VM --todisk sauvegarde l'état RAM sur disque
qm resume <vmid> Reprend une VM suspendue
qm status <vmid> --verbose Affiche le statut d'une VM
qm config <vmid> Affiche la configuration complète d'une VM Fichier /etc/pve/qemu-server/<vmid>.conf
qm set <vmid> --memory, --cores, --net0, --onboot Modifie la configuration d'une VM Certains paramètres nécessitent un arrêt préalable
qm create <vmid> --name, --memory, --cores, --net0, --cdrom Crée une VM L'ID doit être unique dans le cluster
qm destroy <vmid> --purge Supprime une VM et ses disques --purge supprime aussi sauvegardes et replications
qm clone <vmid> <newid> --name, --full, --target Clone une VM Sans --full : clone lié, dépendant du template source
qm template <vmid> Convertit une VM en template ⚠️ Opération irréversible
qm migrate <vmid> <node> --online, --with-local-disks Migre une VM vers un autre nœud --online requiert stockage partagé
qm disk move <vmid> --disk, --storage, --delete Déplace un disque vers un autre stockage --delete supprime la source après déplacement
qm disk resize <vmid> --disk, --size Agrandit un disque +10G pour ajouter, 50G absolu. Pas de réduction
qm disk import <vmid> <fichier> <storage> --format Importe un disque depuis une image Formats : raw, qcow2, vmdk
qm disk unlink <vmid> --idlist, --force Détache et supprime un disque de la config
qm snapshot <vmid> <snapname> --vmstate, --description Crée un snapshot --vmstate inclut la RAM, ralentit la création
qm listsnapshot <vmid> Liste les snapshots d'une VM
qm rollback <vmid> <snapname> Restaure un snapshot VM doit être arrêtée sauf snapshot avec vmstate
qm delsnapshot <vmid> <snapname> Supprime un snapshot
qm guest exec <vmid> --sync, -- Exécute une commande dans la VM Nécessite qemu-guest-agent installé et actif
qm guest passwd <vmid> <user> Change le mot de passe d'un user dans la VM Nécessite qemu-guest-agent
qm agent <vmid> <commande> network-get-interfaces, get-osinfo, ping Interagit avec le guest agent
qm monitor <vmid> Ouvre la console monitor QEMU Commandes QEMU bas niveau
qm rescan --vmid Rescanne les disques d'une VM Utile après ajout de stockage à chaud
qm importovf <vmid> <fichier.ovf> <storage> Importe une VM depuis un fichier OVF/OVA Pratique pour migration depuis VMware

vzdump / qmrestore / pct restore — Sauvegarde & restauration#

Commande Arguments principaux Description Points d'attention / Remarques
vzdump <vmid> --storage, --mode, --compress, --mailto, --node Sauvegarde une VM ou CT Modes : snapshot, suspend, stop. Snapshot = le moins impactant
vzdump --all --exclude, --storage, --mode Sauvegarde toutes les VMs/CTs du nœud
vzdump --vmid <id1,id2> --storage, --mode Sauvegarde une liste de VMs/CTs IDs séparés par des virgules
qmrestore <fichier> <vmid> --storage, --unique Restaure une sauvegarde VM --unique génère de nouveaux MAC/UUID
pct restore <ctid> <fichier> --storage, --hostname Restaure une sauvegarde CT

zpool — Gestion des pools zfs#

Commande Arguments principaux Description Points d'attention / Remarques
zpool status -v Statut détaillé de tous les pools ZFS READ/WRITE/CKSUM > 0 = problème matériel à investiguer
zpool status <pool> -v Statut d'un pool spécifique
zpool list -v, -H Liste les pools avec taille et occupation -H pour sortie parsable par script
zpool iostat <pool> <interval> Statistiques I/O en temps réel Ex : zpool iostat tank 2
zpool scrub <pool> Lance un scrub (vérification intégrité complète) À planifier mensuellement minimum en prod
zpool scrub -s <pool> Stoppe un scrub en cours
zpool create <pool> mirror, raidz, raidz2, -o ashift=12 Crée un pool ZFS ashift=12 obligatoire pour disques 4K/SSD
zpool add <pool> mirror <dev1> <dev2> Ajoute un vdev miroir à un pool existant Agrandit le pool, opération irréversible
zpool replace <pool> <old> <new> Remplace un disque défaillant Resilver automatique après remplacement
zpool offline <pool> <device> Met un disque offline (maintenance) Le pool continue en mode dégradé si redondance suffisante
zpool online <pool> <device> Remet un disque online
zpool import Liste les pools importables Utile après déplacement de disques
zpool import <pool> -f Importe un pool -f pour forcer si le pool était sur un autre hôte
zpool export <pool> Exporte proprement un pool ⚠️ Toujours exporter avant de déplacer des disques
zpool destroy <pool> Détruit un pool ⚠️ Irréversible, toutes les données sont perdues
zpool history <pool> Historique des commandes ZFS sur le pool Très utile pour auditer ou débugger
zpool upgrade <pool> Met à jour la version du pool ⚠️ Irréversible, vérifier compatibilité avant

zfs — Gestion des datasets#

Commande Arguments principaux Description Points d'attention / Remarques
zfs list -t all, -r <pool> Liste les datasets, volumes et snapshots -t snapshot pour ne voir que les snapshots
zfs create <pool/ds> -o compression=lz4 Crée un dataset
zfs destroy <pool/ds> -r, -d Supprime un dataset ou snapshot -d pour différer si des clones existent
zfs snapshot <pool/ds@snapname> -r Crée un snapshot -r pour snapshot récursif
zfs rollback <pool/ds@snapname> -r Restaure un snapshot Détruit les snapshots plus récents sauf avec -r
zfs clone <pool/ds@snap> <pool/newds> Crée un dataset depuis un snapshot Le snapshot ne peut plus être supprimé tant que le clone existe
zfs send <pool/ds@snap> -i <snap>(incrémental) Exporte un snapshot en flux binaire Combiner avec zfs receive pour répliquer
zfs receive <pool/ds> -F Reçoit un flux zfs send Ex : `zfs send tank/vm@s1 ssh node2 zfs receive backup/vm`
zfs get all <pool/ds> Affiche toutes les propriétés d'un dataset
zfs set compression=lz4 <pool/ds> lz4, zstd, off Active/change la compression lz4 recommandé pour ratio perf/compression
zfs set atime=off <pool/ds> Désactive la mise à jour des temps d'accès Gain de perfs pour workloads VM
zfs set quota=<size> <pool/ds> Pose un quota sur un dataset Ex : quota=500G
zfs set reservation=<size> <pool/ds> Réserve de l'espace garanti Évite qu'un dataset affame les autres
zfs get compressratio <pool/ds> Affiche le ratio de compression effectif
zfs diff <pool/ds@snap1> <pool/ds@snap2> Compare deux snapshots Très utile pour auditer les changements entre sauvegardes
zfs rename <pool/ds> <pool/newname> Renomme un dataset
zfs mount -a Monte tous les datasets ZFS Utile après un reboot partiel
zfs umount <pool/ds> -f Démonte un dataset

ceph — Gestion des ensembles CEPH#

Commande Arguments principaux Description Points d'attention / Remarques
ceph status Statut global du cluster Ceph HEALTH_OK = nominal. HEALTH_WARN/ERR = investiguer immédiatement
ceph health detail Détail des warnings/erreurs Premier réflexe en cas de HEALTH_WARN
ceph -w Surveillance en temps réel des événements Équivalent d'un tail -f sur le cluster
ceph osd status Statut de tous les OSDs Vérifie les OSDs up/down et leur poids
ceph osd tree Arbre CRUSH (rack, host, osd) Visualise la distribution et la tolérance aux pannes
ceph osd df Occupation disque par OSD OSD > 85% = critique
ceph df Occupation globale des pools
ceph df detail Détail par pool (objets, quota, ratio)
ceph mon stat Statut des monitors Quorum minimum : (n/2)+1 monitors actifs
ceph mon dump Dump complet de la config des monitors
ceph pg stat Statut des Placement Groups PGs en active+clean = nominal
ceph pg dump Dump de tous les PGs Verbeux, préférer pg stat au quotidien
ceph osd pool ls detail Liste les pools avec leurs paramètres
ceph osd pool create <pool> <pg_num> --pg_num, --pgp_num Crée un pool Ceph Utiliser le calculateur pg_num officiel
ceph osd pool set <pool> size <n> Définit le facteur de réplication size 3 = 3 copies. min_size 2 = min pour écrire
ceph osd pool delete <pool> <pool> --yes-i-really-really-mean-it Supprime un pool Double saisie du nom obligatoire, irréversible
ceph osd out <osd.id> Marque un OSD comme "out" Les données se redistribuent automatiquement
ceph osd in <osd.id> Remet un OSD dans le cluster
ceph osd down <osd.id> Force un OSD à down
ceph osd crush reweight <osd.id> <weight> Ajuste le poids CRUSH d'un OSD 0 pour vider un OSD progressivement avant retrait
ceph osd reweight-by-utilization Rééquilibre automatiquement les poids CRUSH Utile quand les OSDs sont déséquilibrés
ceph osd set noout Empêche les OSDs de passer "out" automatiquement À activer AVANT toute maintenance d'un nœud Ceph
ceph osd unset noout Désactive le flag noout À désactiver APRÈS la maintenance
ceph osd set norebalance Bloque le rebalancing des données Combiné avec noout pour les maintenances lourdes
ceph osd unset norebalance Réactive le rebalancing
ceph osd set nobackfill Bloque le backfill des PGs Réduit la charge I/O pendant une maintenance
ceph osd unset nobackfill Réactive le backfill
ceph tell osd.* injectargs '--osd-max-backfills 1' Limite les backfills simultanés Réduit l'impact sur les I/O de production
ceph auth list Liste les clés d'authentification CephX
ceph auth get client.<name> Affiche la clé d'un client
ceph auth add client.<name> --cap mon, --cap osd Crée un utilisateur CephX
ceph auth del client.<name> Supprime un utilisateur CephX

Last updated on