Infrastructure

📚 Proxmox VE Installation Configuration Complète — VMs LXC ZFS

Guide complet Proxmox VE 8 : installation, configuration réseau Linux Bridge, création VMs KVM et conteneurs LXC, snapshots, sauvegarde vzdump et commandes de référence.

Proxmox VE 8KVMLXCZFSLinux BridgevzdumpSnapshotsCluster

Prérequis matériels

ComposantMinimumRecommandé production
CPU64-bit, support VT-x/AMD-VXeon/EPYC multi-cœurs
RAM2 Go32 Go+ (selon nb de VMs)
Disque OS32 Go SSD dédié2x SSD en ZFS mirror (redondance)
Stockage VMsSSD ou HDD rapideSSD NVMe, ou SAN/NAS iSCSI
Réseau1 Gb Ethernet2x 10 Gb (bond/LAGG)
Proxmox VE8.x (basé Debian 12)Dernière version stable
ℹ️
Virtualisation imbriquée : Pour tester Proxmox dans une VM, activer la virtualisation imbriquée sur l'hôte : modprobe -r kvm_intel && modprobe kvm_intel nested=1 (Intel) ou kvm_amd nested=1 (AMD).

Étape 1 — Installation Proxmox VE

1
Télécharger l'ISO
Sur proxmox.com → Downloads → Proxmox VE ISO Installer. Vérifier la somme SHA256. Créer une clé USB bootable avec Rufus ou Balena Etcher.
2
Installer Proxmox
Booter sur l'USB. Accepter la licence EULA. Sélectionner le disque cible (SSD dédié à l'OS). Choisir le système de fichiers : ext4 (simple) ou ZFS (RAID-1) si 2 disques OS disponibles.
3
Configurer le réseau
IP statique pour le nœud Proxmox (ex: 192.168.1.5/24). Cette IP sera l'adresse de l'interface web. Nom d'hôte FQDN : pve01.entreprise.local.
4
Mot de passe root
Définir un mot de passe root fort. Email administrateur pour les alertes.
5
Accéder à l'interface web
https://192.168.1.5:8006 — Ignorer l'avertissement certificat SSL auto-signé. Se connecter avec root et le mot de passe défini.

Étape 2 — Configuration initiale post-installation

proxmox-post-install.sh
#!/bin/bash
# Configuration initiale Proxmox VE
# Exécuter depuis le shell Proxmox (Node → Shell)

# ── Supprimer le dépôt Enterprise (nécessite abonnement) ─────
# et activer le dépôt No-Subscription (gratuit, production OK)
rm -f /etc/apt/sources.list.d/pve-enterprise.list

cat > /etc/apt/sources.list.d/pve-no-subscription.list << 'EOF'
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription
EOF

# ── Supprimer le dépôt Ceph Enterprise (si pas de Ceph) ──────
rm -f /etc/apt/sources.list.d/ceph.list

# ── Mettre à jour Proxmox ─────────────────────────────────────
apt update && apt full-upgrade -y

# ── Désactiver le popup "No valid subscription" ───────────────
sed -i.bak "s/data.status !== 'Active'/false/g"     /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
systemctl restart pveproxy

# ── Installer des outils utiles ───────────────────────────────
apt install -y htop iotop ncdu vim wget curl ethtool

# ── Fuseau horaire ────────────────────────────────────────────
timedatectl set-timezone Europe/Paris

echo "=== Configuration initiale Proxmox terminée ===" 

Étape 3 — Configurer le réseau (Linux Bridge)

/etc/network/interfaces — Proxmox
# Configuration réseau Proxmox VE
# Fichier : /etc/network/interfaces

auto lo
iface lo inet loopback

# Interface physique (NIC réel)
auto enp3s0
iface enp3s0 inet manual

# Bridge Linux pour les VMs (vmbr0)
# Toutes les VMs connectées à vmbr0 accèdent au réseau physique
auto vmbr0
iface vmbr0 inet static
    address  192.168.1.5/24
    gateway  192.168.1.254
    dns-nameservers 192.168.1.10 8.8.8.8
    bridge-ports enp3s0
    bridge-stp off
    bridge-fd 0
    bridge-vlan-aware yes

# Bridge isolé pour réseau interne VMs (optionnel)
auto vmbr1
iface vmbr1 inet manual
    bridge-ports none
    bridge-stp off
    bridge-fd 0

# Appliquer : systemctl restart networking
# ou depuis l'interface web : Node → Network → Apply Configuration

Étape 4 — Créer une VM

proxmox-create-vm.sh
# Créer une VM via l'API/CLI Proxmox
# (peut aussi se faire via l'interface web)

# ── Uploader une ISO dans le stockage local ───────────────────
# Via l'interface : local (pve01) → ISO Images → Upload
# Via CLI :
wget https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-12.6.0-amd64-netinst.iso     -O /var/lib/vz/template/iso/debian-12-netinst.iso

# ── Créer une VM avec qm ──────────────────────────────────────
qm create 100     --name "debian-srv-01"     --memory 2048     --cores 2     --sockets 1     --cpu host     --net0 virtio,bridge=vmbr0     --scsihw virtio-scsi-pci     --scsi0 local-lvm:32     --ide2 local:iso/debian-12-netinst.iso,media=cdrom     --boot order=ide2;scsi0     --ostype l26     --agent enabled=1

# ── Démarrer la VM ────────────────────────────────────────────
qm start 100

# ── Console de la VM ─────────────────────────────────────────
# Via interface web : VM → Console
# Via CLI :
qm terminal 100

# ── Arrêter / Suspendre ───────────────────────────────────────
qm shutdown 100
qm suspend 100

Étape 5 — Créer un conteneur LXC

proxmox-create-lxc.sh
# Créer un conteneur LXC (plus léger qu'une VM)
# Télécharger d'abord un template

# ── Télécharger un template Debian ───────────────────────────
pveam update
pveam available | grep debian
pveam download local debian-12-standard_12.2-1_amd64.tar.zst

# ── Créer le conteneur LXC ────────────────────────────────────
pct create 200 local:vztmpl/debian-12-standard_12.2-1_amd64.tar.zst     --hostname lxc-nginx     --memory 512     --swap 512     --cores 1     --net0 name=eth0,bridge=vmbr0,ip=192.168.1.201/24,gw=192.168.1.254     --rootfs local-lvm:8     --password "ContainerP@ss!"     --unprivileged 1     --start 1

# ── Accéder au conteneur ──────────────────────────────────────
pct enter 200

# ── Commandes LXC utiles ──────────────────────────────────────
pct list                    # Lister les conteneurs
pct start/stop/restart 200  # Gérer l'état
pct snapshot 200 snap-init  # Créer un snapshot
pct config 200              # Voir la configuration

Étape 6 — Snapshots et sauvegarde (vzdump)

proxmox-backup.sh
# ── Snapshot d'une VM (rapide, sans agent) ────────────────────
qm snapshot 100 "avant-mise-a-jour" --description "Avant MAJ OS"
qm listsnapshot 100
qm rollback 100 "avant-mise-a-jour"

# ── Sauvegarde complète avec vzdump ──────────────────────────
# (arrêt/suspend de la VM pendant la sauvegarde)
vzdump 100 --storage local --compress zstd --mode suspend

# Sauvegarde à chaud avec agent QEMU (VM Linux avec qemu-guest-agent)
vzdump 100 --storage local --compress zstd --mode snapshot

# ── Sauvegarde automatique (tâche planifiée) ──────────────────
# Via interface web : Datacenter → Backup → Add
# Ou via /etc/cron.d/vzdump :
# 0 2 * * 0 root vzdump --all --storage local --compress zstd --mode snapshot

# ── Restaurer une sauvegarde ──────────────────────────────────
# Via interface web : local → Backups → Restore
# Via CLI :
qmrestore /var/lib/vz/dump/vzdump-qemu-100-*.vma.zst 101 --storage local-lvm

Commandes Proxmox — Référence

CommandeDescription
VMs (qm)
qm listLister toutes les VMs avec leur état
qm start/stop/reset <vmid>Démarrer/arrêter/redémarrer une VM
qm shutdown <vmid>Extinction propre (ACPI)
qm snapshot <vmid> <nom>Créer un snapshot instantané
qm rollback <vmid> <snap>Restaurer un snapshot
qm clone <vmid> <newid> --fullCloner une VM (clone complet)
qm migrate <vmid> <node>Migrer une VM vers un autre nœud
Conteneurs LXC (pct)
pct listLister les conteneurs LXC
pct enter <ctid>Ouvrir un shell dans un conteneur
pct snapshot <ctid> <nom>Snapshot d'un conteneur
Cluster et nœuds
pvecm statusÉtat du cluster Proxmox
pvecm nodesLister les nœuds du cluster
pvesh get /nodesAPI REST — liste des nœuds
pveperfBenchmark des performances du nœud
Stockage
pvesm statusÉtat des stockages disponibles
pvesm list localContenu d'un stockage
💡
Template de VM : Créer une VM maître propre (Debian ou Windows), l'installer et configurer, puis la convertir en template (qm template <vmid>). Les nouvelles VMs créées depuis ce template démarrent déjà configurées — gain de temps considérable.
Ajouter Les Fibrés à mes sources préférées
Retrouvez plus souvent nos guides dans vos résultats Google