Proxmox Il s'agit d'une plateforme de virtualisation gratuite (sous licence AGPLv3) qui s'appuie sur l'hyperviseur Linux KVM. Elle offre également des conteneurs avec LXC. Cette plateforme propose également un service d'assistance payant. Sauvegarde Proxmox Virtual Environment Méthode de sauvegarde des configurations et données critiques Proxmox. Avoir des sauvegardes fiables et facilement restaurables est primordial, que ce soit pour se prémunir contre une panne matérielle, une erreur de manipulation ou une attaque. Méthode de sauvegarde en local Prérequis Un disque dur USB ou un stockage en réseau monté pour les sauvegardes s'il ne l'est pas déjà fait pour vos sauvegardes. Sauvegarder l'intégralité des machines virtuelles et des conteneurs dans un stockage externe (voir Backup and Restore ). La sauvegarde : 3-2-1-1-0 et bonnes pratiques Point de montage Pour monter la clé USB qui est formatée en ext4 automatiquement au démarrage, vous pouvez ajouter la ligne suivante dans le fichier /etc/fstab : sudo -i nano /etc/fstab /dev/sdb1 /mnt/pve/backup-proxmox ext4 defaults,nofail 0 0 Si vous avez un partage de fichiers réseau NFS grâce à un NAS TrueNAS ou Synology, vous pouvez prendre l'exemple ci-dessous en installant au préalable le paquet nfs-common : 192.168.1.666:/mnt/stockage/backup-proxmox /mnt/pve/backup-proxmox nfs defaults,nofail 0 0 systemctl daemon-reload && mount -a L'option nofail permet de ne pas bloquer le démarrage si la clé USB ou le partage NFS n'est pas connectée. Assurez-vous de remplacer /dev/sdb1 par le bon nom de périphérique de votre clé USB en effectuant la commande lsblk et /mnt/pve/backup-proxmox par le point de montage de votre choix. Sauvegarde LXC, machine virtuelle Sauvegarde configuration sudo -i nano ~/proxmox_configuration_backup.sh Il vous suffit de changer la destination pour les sauvegardes par la vôtre : #!/bin/bash # Description # Ce script effectue une sauvegarde des dossiers spécifiés. # Les sauvegardes sont conservées pendant 7 jours # Le script est exécuté via une tâche cron tous les jours à 2h du matin. # Dossiers à sauvegarder BACKUP_DIRS=("/etc/pve" "/etc/passwd" "/etc/network/interfaces" "/var/log") # Destination des sauvegardes BACKUP_DEST="/mnt/pve/backup-proxmox/proxmox_configuration_backup" # Nombre de jours de conservation RETENTION_DAYS=7 # Exécution de la sauvegarde for dir in "${BACKUP_DIRS[@]}"; do filename="$(basename "$dir")_$(date +%Y-%m-%d).tar.gz" tar -czf "$BACKUP_DEST/$filename" "$dir" # Création du fichier de checksum SHA-256 sha256sum "$BACKUP_DEST/$filename" > "$BACKUP_DEST/$filename.sha256" done # Suppression des sauvegardes obsolètes find "$BACKUP_DEST" -type f -mtime +$RETENTION_DAYS -delete # Fin du script echo "Sauvegarde terminée." # Pour vérifier le checksum d'un fichier de sauvegarde, utilisez la commande suivante : # sha256sum -c nom_du_fichier.tar.sha256" # Remplacez "nom_du_fichier" par le nom de votre fichier de sauvegarde. Rendre exécutable le script : chmod +x ~/proxmox_configuration_backup.sh La tâche cron pour effectuer la sauvegarde chaque matin à 2h : crontab -e 0 2 * * * ./proxmox_configuration_backup.sh Testez les archives pour vérifier qu'elles ont bien été archivées : Sauvegarde hebdomadaire vers site distant Sauvegarder de manière hebdomadaire et incrémentielle les données Proxmox sur un stockage chiffré chez SwissBackup. Prérequis Rclone d'installé Configurer Rclone avec un service de stockage comme SwissBackup ou autres La tâche cron : crontab -e 0 2 * * * rclone sync /mnt/pve/backup-proxmox crypt_SwissBackup_backup-proxmox:/backup-proxmox --verbose --log-file=/mnt/backupHDD/rclone_SwissBackup_backup-proxmox.txt Fonctionnement : Exécution tous les jours à 2h du matin Synchronisation du répertoire local /mnt/pve/backup-proxmox vers le répertoire distant crypt_SwissBackup_backup-proxmox:/backup-proxmox Utilisation du chiffrement pour le stockage distant sur SwissBackup Mode verbeux activé pour plus de détails Journalisation des opérations dans le fichier /mnt/pve/backup-proxmox/rclone_SwissBackup_backup-proxmox.txt Restaurer Proxmox Virtual Environment Voici les étapes à suivre pour restaurer Proxmox : Installez la dernière version de Proxmox VE 8.x à partir de l'ISO (cela supprimera toutes les données sur l'hôte existant) si nécessaire. Videz le cache de votre navigateur et/ou forcez le rechargement de l'interface Web (CTRL + SHIFT + R, ou pour macOS ⌘ + Alt + R). Reconstruisez votre cluster si nécessaire. Restaurez le fichier /etc/pve/storage.cfg pour rendre le stockage externe utilisé pour la sauvegarde disponible. Restaurez les configurations du pare-feu dans /etc/pve/firewall/ et /etc/pve/nodes//host.fw si nécessaire. Restaurez toutes vos machines virtuelles à partir des sauvegardes (voir la documentation sur la sauvegarde et la restauration ). Voici les commandes pour restaurer les fichiers de configuration sauvegardés : Placez-vous dans le répertoire contenant vos sauvegardes : cd /mnt/pve/backup-proxmox ls Restaurez les fichiers de configuration : Restaurer le fichier /etc/pve/storage.cfg : # Restaurer le fichier /etc/pve/storage.cfg sudo tar -xzf pve_YYYY-MM-DD.tar.gz -C /etc/pve/ etc/pve/storage.cfg Remplacez YYYY-MM-DD par la date de la sauvegarde que vous voulez restaurer. Restaurer les configurations du pare-feu : # Restaurer le dossier /etc/pve/firewall/ sudo tar -xzf pve_YYYY-MM-DD.tar.gz -C /etc/pve/ etc/pve/firewall/ # Restaurer le fichier /etc/pve/nodes//host.fw sudo tar -xzf pve_YYYY-MM-DD.tar.gz -C /etc/pve/nodes// etc/pve/nodes//host.fw Remplacez YYYY-MM-DD par la date de la sauvegarde et par le nom du nœud Proxmox correspondant. Proxmox VE Helper-Scripts Une initiative menée par une communauté qui simplifie la configuration de l'environnement virtuel Proxmox. Avec plus de 300 scripts pour vous aider à gérer votre environnement Proxmox VE, que vous soyez un utilisateur chevronné ou un nouvel arrivant, ils sont disponibles sur cette page . Applications qBittorrent avec VPN dans un conteneur LXC Créer un serveur de téléchargement de torrent avec qBittorrent et une interface conviviale, et installer un VPN. Prérequis Installer l'application en utilisant le script : https://community-scripts.github.io/ProxmoxVE/scripts?id=qbittorrent Récupérer le fichier de configuration WireGuard de votre fournisseur. Il devrait ressembler à ceci lorsqu'on l'ouvre avec un éditeur de texte : [Interface] PrivateKey = VOTRE_CLE_PRIVEE_CLIENT_ICI Address = 10.0.0.2/24 DNS = 9.9.9.9 [Peer] PublicKey = CLE_PUBLIQUE_DU_SERVEUR_ICI Endpoint = 123.45.67.89:51820 AllowedIPs = 0.0.0.0/0, ::/0 PersistentKeepalive = 25 Ajouter les lignes suivantes sous la ligne DNS dans votre configuration WireGuard : PostUp = iptables -I OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL ! -d 192.168.0.0/16 -j REJECT && ip6tables -I OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT PreDown = iptables -D OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL ! -d 192.168.0.0/16 -j REJECT && ip6tables -D OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT Ces commandes ajoutent (au démarrage) et retirent (à l’arrêt) des règles dans le pare-feu pour empêcher que votre serveur envoie du trafic Internet « en clair » hors du tunnel WireGuard, évitant ainsi les fuites de données non protégées. Votre configuration devrait ressembler à ceci : [Interface] PrivateKey = VOTRE_CLE_PRIVEE_CLIENT_ICI Address = 10.0.0.2/24 DNS = 9.9.9.9 PostUp = iptables -I OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL ! -d 192.168.0.0/16 -j REJECT && ip6tables -I OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT PreDown = iptables -D OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL ! -d 192.168.0.0/16 -j REJECT && ip6tables -D OUTPUT ! -o %i -m mark ! --mark $(wg show %i fwmark) -m addrtype ! --dst-type LOCAL -j REJECT [Peer] PublicKey = CLE_PUBLIQUE_DU_SERVEUR_ICI Endpoint = 123.45.67.89:51820 AllowedIPs = 0.0.0.0/0, ::/0 PersistentKeepalive = 25 Installer le VPN et iptables : sudo apt install -y curl wireguard iptables resolvconf Configuration du VPN 1. Configurer le serveur Créez et éditez le fichier de configuration WireGuard : sudo nano /etc/wireguard/wg0.conf Collez la configuration VPN dans ce fichier. Pour enregistrer et sortir de nano : Appuyez sur Ctrl + O (pour écrire/ enregistrer le fichier), puis appuyez sur Entrée pour confirmer le nom du fichier, ensuite appuyez sur Ctrl + X pour quitter l’éditeur. 2. Démarrer le serveur WireGuard Démarrez et activez le service WireGuard : sudo wg-quick up wg0 sudo systemctl enable wg-quick@wg0 --now 3. Vérifier la connexion Vérifiez le statut de WireGuard : sudo wg 4. Tester l'adresse IP publique Vérifiez votre adresse IP publique en utilisant curl : curl ifconfig.me 5. Outil permettant de télécharger un fichier torrent privé afin de vérifier l'adresse IP de votre client torrent : Il vous suffit de faire un clic droit sur le bouton pour copier le lien magnet, puis de l’ajouter dans qBittorrent afin de vérifier qu’aucune fuite de votre adresse IP réelle ne se produit. Vous pouvez accéder à cet outil à l’adresse suivante : https://torguard.net/checkmytorrentipaddress.php Accès URL d’accès local : http://IP_DU_SERVEUR:8090 Remplacez IP_DU_SERVEUR par l'adresse IP indiquée lors de l'installation de qBittorrent. Instructions d'installation des nouveaux drivers NVIDIA Tesla P4 Téléchargez les nouveaux drivers : NVIDIA Drivers Transférez-les sur le serveur CDN : cdn.favrep.ovh Téléchargez les drivers sur Proxmox avec wget : wget Téléchargez le patch : Lien vers le patch Désinstallez les anciens drivers NVIDIA : nvidia-uninstall Instructions supplémentaires pour Pascal et les anciennes GPU Appliquez le patch aux drivers : ./NVIDIA-Linux-x86_64-550.163.02-vgpu-kvm.run --apply-patch 550.163.02.patch Téléchargez le fichier vgpuConfig.xml depuis le CDN : wget --content-disposition --no-check-certificate https://lien.com/f.php?h=1nTXJqIG&d=1 Remplacez le fichier vgpuConfig.xml : mv vgpuConfig.xml /usr/share/nvidia/vgpu/vgpuConfig.xml Optimiser les performances des machines virtuelles Proxmox permet d’optimiser les performances des machines virtuelles (VM) utilisant des disques NVMe ou SSD compatibles en configurant certains paramètres clés. Il est recommandé d’activer le TRIM avec le mode "Write Back" sur les disques virtuels : cette fonctionnalité informe le disque des blocs de données libérés, améliorant les performances et réduisant l’espace utilisé lors des sauvegardes. De plus, cocher l’option "SSD Emulation" indique au système que le disque est un SSD ou NVMe, ce qui optimise la gestion des entrées/sorties par rapport aux disques durs mécaniques. Il est également conseillé de définir le type de CPU de la VM sur "Host" afin d’exploiter pleinement les capacités du processeur physique. Concernant l’option "IO Thread" dans la configuration des disques, il vaut mieux la décocher pour les SSD et NVMe . Cette option, qui permet de traiter les opérations d’entrée/sortie en parallèle, peut générer une surcharge inutile, le matériel rapide gérant déjà efficacement les accès concurrents. La désactivation des IO threads simplifie ce traitement et évite d’éventuels conflits qui nuiraient aux performances. Pour optimiser la gestion de l’espace disque et réduire la taille des sauvegardes, on recommande d’exécuter régulièrement la commande fstrim via une tâche cron. Cette commande effectue un TRIM sur tous les systèmes de fichiers montés, libérant ainsi de l’espace inutilisé sur les SSD. Ajoutez dans le crontab ( crontab -e ) la ligne suivante : @weekly /sbin/fstrim --all || true Cette tâche s’exécutera chaque dimanche à minuit. Le "|| true" garantit la poursuite du script même en cas d’erreur. Notez que cette opération nécessite des droits administrateur ainsi qu’un système et matériel compatibles TRIM. En combinant ces réglages, vous améliorez la réactivité des VM, prolongez la durée de vie des disques SSD/NVMe et optimisez les performances d’E/S tout en réduisant la taille des sauvegardes. Pour plus d’informations, la documentation officielle Proxmox reste la meilleure référence : https://pve.proxmox.com/pve-docs/chapter-qm.html#qm_hard_disk