Proxmox Backup Server
Proxmox Backup Server (PBS) est la solution de backup officielle pour Proxmox VE. Ce guide couvre l’installation sur une VM KVM hébergée sur une machine physiquement séparée du Proxmox host — ce qui garantit que les backups survivent à une panne de l’hyperviseur principal.
Architecture
Section titled “Architecture”Proxmox host (<PROXMOX_IP>) │ │ VLAN backup — trafic backup uniquement │PBS VM (<PBS_IP>) ←─── KVM/libvirt sur machine secondaire │ └── /dev/sdX — disque dédié passthroughLe VLAN backup est un réseau dédié exclusivement au trafic PBS, isolé des autres VLANs. La machine secondaire expose ce VLAN via un bridge sur lequel la VM est attachée.
Installation
Section titled “Installation”1. Réseau VLAN backup sur la machine secondaire
Section titled “1. Réseau VLAN backup sur la machine secondaire”Créer le bridge et attacher le VLAN backup à l’interface physique :
# Bridge principalnmcli con add type bridge con-name "br0" ifname "br0" \ ipv4.method disabled ipv6.method disabled bridge.stp no
# VLAN backup attaché au bridgenmcli con add type vlan con-name "BACKUP" ifname "vlan<BACKUP_VLAN_ID>" \ dev <PHYSICAL_INTERFACE> id <BACKUP_VLAN_ID> \ ipv4.method disabled ipv6.method disabled \ master "br0" slave-type bridge
nmcli con up "br0"nmcli con up "BACKUP"Créer le hook libvirt pour attacher automatiquement l’interface réseau de la VM au bridge au démarrage :
nano /etc/libvirt/hooks/qemu#!/bin/bashVM="$1"ACTION="$2"
if [ "$VM" = "pbs" ] && [ "$ACTION" = "started" ]; then sleep 2 ip link set vnet0 master br0fichmod +x /etc/libvirt/hooks/qemusystemctl restart libvirtd2. Création de la VM PBS
Section titled “2. Création de la VM PBS”Télécharger l’ISO PBS depuis proxmox.com et créer la VM :
virt-install \ --name pbs \ --memory 4096 \ --vcpus 2 \ --disk /var/lib/libvirt/images/pbs.qcow2,size=32 \ --disk /dev/<BACKUP_DISK> \ --cdrom /path/to/proxmox-backup-server.iso \ --network bridge=br0 \ --os-variant debian11 \ --boot cdrom,hd \ --graphics spiceConfigurer le réseau lors de l’installation PBS :
IP : <PBS_IP>/24Gateway : <BACKUP_GATEWAY>DNS : <DNS_IP>3. Démarrage automatique
Section titled “3. Démarrage automatique”virsh autostart pbsvirsh list --allConfiguration PBS
Section titled “Configuration PBS”Préparer le disque de données
Section titled “Préparer le disque de données”# Formater le disque dédié (passthrough /dev/sdX)mkfs.ext4 /dev/<BACKUP_DISK>mkdir -p /mnt/datastore/<DATASTORE_NAME>echo '/dev/<BACKUP_DISK> /mnt/datastore/<DATASTORE_NAME> ext4 defaults 0 2' >> /etc/fstabmount -aCréer le datastore
Section titled “Créer le datastore”Dans l’UI PBS (https://<PBS_IP>:8007) → Datastore → Add :
Name : <DATASTORE_NAME>Directory : /mnt/datastore/<DATASTORE_NAME>Configurer la rétention
Section titled “Configurer la rétention”Datastore → <DATASTORE_NAME> → Prune & GC :
Keep last : 7Keep daily : 14Keep weekly : 4Connexion Proxmox → PBS
Section titled “Connexion Proxmox → PBS”Récupérer le fingerprint
Section titled “Récupérer le fingerprint”ssh root@<PBS_IP> "proxmox-backup-manager cert info | grep Fingerprint"Ajouter le storage dans Proxmox
Section titled “Ajouter le storage dans Proxmox”Datacenter → Storage → Add → Proxmox Backup Server :
ID : pbsServer : <PBS_IP>Datastore : <DATASTORE_NAME>Username : root@pamPassword : <PBS_ROOT_PASSWORD>Fingerprint : <FINGERPRINT>Jobs de backup
Section titled “Jobs de backup”Datacenter → Backup → Add :
Storage : pbsSchedule : <HEURE> (ex: 21:00 — tous les jours)Selection : AllMode : SnapshotRestauration
Section titled “Restauration”Depuis l’UI Proxmox
Section titled “Depuis l’UI Proxmox”Datacenter → Storage → pbs → Backups :
- Sélectionner le backup
- Clic droit → Restore
- Choisir le node cible, le CT ID et le storage
- Cocher Start after restore si besoin
En ligne de commande
Section titled “En ligne de commande”# Lister les backups disponiblesproxmox-backup-client list --repository root@pam@<PBS_IP>:<DATASTORE_NAME>
# Restaurer un LXCpct restore <CTID> pbs:backup/<SNAPSHOT_ID> \ --storage local-lvm \ --start 1Vérification post-reboot
Section titled “Vérification post-reboot”# Bridge et VLAN backup upip link show br0ip link show vlan<BACKUP_VLAN_ID>
# VM PBS démarréevirsh list --all
# PBS accessiblecurl -k https://<PBS_IP>:8007 -o /dev/null -w "%{http_code}"# Attendu : 200Si le bridge est down :
nmcli con up "br0"nmcli con up "BACKUP"Si la VM n’a pas démarré :
virsh start pbs