Aller au contenu

Proxmox VE

De Wiki Pat-Informatik
🏠 Accueil 📚 Index 🐧 Linux 🌐 Réseau 🔒 Cybersécurité 🖥️ Virtualisation ✅ Checklists d'intervention 📚 Tutoriels 🤝 Services
Wiki Pat-Informatik • Virtualisation

🖥️ Proxmox VE

Installer, administrer et sécuriser une plateforme de virtualisation pour ton serveur, ton homelab ou ton infrastructure informatique.
Proxmox VE
Proxmox VE

🧭 Présentation de Proxmox VE

Proxmox VE (Proxmox Virtual Environment) est une plateforme de virtualisation libre permettant d'administrer plusieurs machines virtuelles et conteneurs depuis une interface web.

Basé sur Debian GNU/Linux, Proxmox VE intègre notamment :

  • KVM pour la virtualisation complète des machines virtuelles.
  • LXC pour exécuter des conteneurs Linux.
  • QEMU pour l'exécution et l'émulation de périphériques virtuels.
  • Stockage pour gérer les disques virtuels, les volumes et les espaces de stockage.
  • Réseau pour connecter les machines virtuelles et les conteneurs.
  • Sauvegardes pour protéger les systèmes et leurs données.

La plateforme peut être utilisée pour des environnements de test, des serveurs de production, des laboratoires informatiques ou des infrastructures professionnelles.

🖥️ Machines virtuelles

Exécuter Windows Server, Linux et d'autres systèmes d'exploitation isolés.

📦 Conteneurs LXC

Déployer des environnements Linux légers sans démarrer un système invité complet.

🌐 Interface web

Gérer les VM, les conteneurs, les disques, le réseau et les sauvegardes depuis un navigateur.

⚖️ Proxmox VE, KVM et VirtualBox

Solution Fonction principale Utilisation courante
KVM Technologie de virtualisation du noyau Linux. Virtualisation sur un hôte Linux.
Proxmox VE Plateforme complète de gestion de la virtualisation. Serveurs, homelabs et infrastructures informatiques.
VirtualBox Logiciel de virtualisation destiné notamment aux postes de travail. Tests, apprentissage et machines virtuelles sur un PC.
VMware Workstation Logiciel de virtualisation pour postes de travail. Formation et environnements de test.

À retenir : KVM est un composant de virtualisation. Proxmox VE s'appuie notamment sur KVM et LXC et ajoute une interface d'administration, la gestion du stockage, du réseau et des sauvegardes.

🧩 Architecture de Proxmox VE

Serveur physique
    |
    +-- Proxmox VE
          |
          +-- KVM / QEMU
          |      |
          |      +-- VM 100 : Windows Server
          |      +-- VM 101 : Ubuntu Server
          |      +-- VM 102 : Debian
          |
          +-- LXC
          |      |
          |      +-- CT 200 : Serveur web
          |      +-- CT 201 : Service Linux
          |
          +-- Réseau virtuel
          +-- Stockage
          +-- Sauvegardes
          +-- Interface web

Chaque machine virtuelle possède son propre système d'exploitation invité. Les conteneurs LXC partagent le noyau Linux de l'hôte, ce qui les rend généralement plus légers, mais limite les systèmes qu'ils peuvent exécuter.

🖥️ Prérequis matériels

Avant l'installation, vérifie les éléments suivants :

⚙️ Processeur

Processeur 64 bits compatible avec la virtualisation matérielle. Pour les VM x86, Intel VT-x ou AMD-V doit être disponible.

🧠 Mémoire RAM

Prévoir la mémoire nécessaire à Proxmox VE et à l'ensemble des machines virtuelles et conteneurs.

💽 Stockage

Prévoir un SSD ou des disques adaptés à l'hôte, aux machines virtuelles et aux sauvegardes.

🌐 Réseau

Une interface réseau fonctionnelle et une adresse IP adaptée à l'administration du serveur.

Les ressources nécessaires dépendent du nombre de VM, de leur système d'exploitation et de leur charge de travail. Les besoins d'un simple laboratoire sont très différents de ceux d'un serveur professionnel.

Vérifier la virtualisation matérielle

Sur un hôte Linux compatible, tu peux vérifier les indicateurs du processeur :

grep -Eoc '(vmx|svm)' /proc/cpuinfo
  • `vmx` : indicateur de virtualisation Intel.
  • `svm` : indicateur de virtualisation AMD.

Un résultat supérieur à zéro indique que les indicateurs correspondants sont visibles. Vérifie également les paramètres du BIOS/UEFI.

💿 Installation de Proxmox VE

1. Télécharger l'image ISO

Rends-toi sur le site officiel :

Télécharge l'installateur ISO correspondant à ton architecture et à la version que tu souhaites installer.

2. Préparer une clé USB

Tu peux utiliser un outil comme Rufus ou Ventoy pour préparer un support d'installation compatible.

Étapes générales :

  1. Télécharger l'image ISO.
  2. Préparer une clé USB adaptée.
  3. Démarrer le serveur depuis cette clé.
  4. Lancer l'installateur Proxmox VE.

3. Installer le système

L'installateur permet notamment de :

  • Choisir le disque d'installation.
  • Configurer le fuseau horaire et le clavier.
  • Définir le mot de passe administrateur.
  • Renseigner une adresse e-mail.
  • Configurer le réseau de gestion.
  • Définir le nom du serveur.

⚠️ Attention : installation sur disque

L'installation standard de Proxmox VE sur un serveur physique utilise le disque sélectionné et peut supprimer les données qui s'y trouvent. Sauvegarde les données importantes et vérifie soigneusement le disque cible avant de continuer.

4. Accéder à l'interface web

Après le redémarrage, l'installateur affiche normalement une adresse permettant d'accéder à l'interface d'administration.

Depuis un autre ordinateur du réseau, ouvre :

https://ADRESSE_IP_DU_SERVEUR:8006

Exemple fictif :

https://192.168.1.50:8006

Remplace cette adresse par l'adresse IP réellement attribuée à ton serveur.

Connecte-toi avec le compte `root`, le mot de passe défini pendant l'installation et le domaine d'authentification approprié, généralement `Linux PAM standard` pour le compte système `root`.

Le navigateur peut afficher un avertissement concernant le certificat TLS autosigné par défaut. Vérifie que tu accèdes bien à ton serveur et configure un certificat de confiance si nécessaire.

⚙️ Configuration après installation

Après la première connexion, plusieurs vérifications sont recommandées.

Vérifier le nom du serveur

Dans le terminal du nœud Proxmox :

hostname
hostname -f

Le nom complet du serveur doit être correctement résolu par la configuration DNS ou le fichier `/etc/hosts`.

Vérifier l'adresse IP

ip addr
ip route

Ces commandes permettent de contrôler les interfaces réseau et la route par défaut.

Vérifier l'état des services

systemctl status pveproxy
systemctl status pvedaemon
systemctl status pvestatd

Ces services participent respectivement à l'interface web, aux opérations d'administration et à la collecte d'informations sur les ressources.

Mettre à jour Proxmox VE

Les mises à jour peuvent être gérées depuis l'interface web, dans le nœud puis la section des mises à jour.

En ligne de commande :

apt update
apt full-upgrade

Vérifie d'abord que les dépôts configurés correspondent à ton installation et à ton type d'abonnement. Lis les changements proposés avant de confirmer. Prévois une fenêtre de maintenance pour les mises à jour susceptibles de nécessiter un redémarrage.

🖥️ Créer une machine virtuelle

La création d'une machine virtuelle se fait généralement depuis l'interface web.

Étapes dans l'interface

  1. Sélectionner le nœud Proxmox.
  2. Cliquer sur Créer une VM.
  3. Définir un identifiant et un nom.
  4. Choisir l'image ISO du système invité.
  5. Configurer le BIOS virtuel et le type de machine si nécessaire.
  6. Définir le nombre de processeurs virtuels.
  7. Attribuer la mémoire RAM.
  8. Créer ou sélectionner un disque virtuel.
  9. Configurer la carte réseau.
  10. Valider puis démarrer la VM.
  11. Ouvrir la console et installer le système d'exploitation.

Exemple de configuration

Paramètre Exemple Remarque
Nom ubuntu-test Nom descriptif de la VM.
ID 100 Identifiant numérique libre sur le cluster.
Processeurs 2 vCPU À adapter à la charge.
Mémoire 4096 Mo Soit environ 4 Go.
Disque 32 Go À adapter à l'OS et aux applications.
Réseau vmbr0 Pont réseau, si configuré.
ISO Ubuntu Server Image d'installation téléchargée.

Ces valeurs sont un exemple de laboratoire, pas une configuration universelle.

📦 Créer un conteneur LXC

Un conteneur LXC est généralement plus léger qu'une machine virtuelle complète, car il partage le noyau Linux de l'hôte.

Il convient à de nombreux services Linux, à condition que le système et les applications soient compatibles avec cette architecture.

Étapes de création

  1. Télécharger un modèle de conteneur depuis le stockage de modèles disponible.
  2. Cliquer sur Créer CT.
  3. Définir l'identifiant et le nom d'hôte.
  4. Configurer le mot de passe ou les clés SSH.
  5. Choisir le modèle Linux.
  6. Définir le stockage et la taille du disque.
  7. Attribuer la mémoire et les processeurs.
  8. Configurer le réseau.
  9. Créer et démarrer le conteneur.

💡 Conseil : pour un serveur de test Linux simple, un conteneur LXC peut être suffisant. Pour Windows, un noyau personnalisé ou une isolation plus complète, privilégie généralement une machine virtuelle KVM.

VM ou conteneur ?

Critère Machine virtuelle KVM Conteneur LXC
Noyau Noyau propre au système invité. Noyau Linux partagé avec l'hôte.
Systèmes invités Linux, Windows et autres OS compatibles. Principalement des distributions Linux compatibles.
Ressources Plus de ressources en général. Généralement plus léger.
Isolation Isolation matérielle virtuelle. Isolation par les mécanismes du noyau Linux.
Cas d'utilisation Serveurs complets, Windows Server, tests d'OS. Services Linux et applications légères.

🌐 Réseau et ponts réseau

Proxmox VE utilise couramment des ponts Linux pour connecter les machines virtuelles et les conteneurs au réseau.

Le pont `vmbr0` est souvent utilisé comme interface réseau principale, mais son nom et sa configuration peuvent varier.

Exemple d'architecture réseau

Réseau local
     |
     +-- Routeur / Box Internet
              |
              +-- Interface physique du serveur
                        |
                        +-- vmbr0
                              |
                              +-- VM 100
                              +-- VM 101
                              +-- CT 200

Vérifier les interfaces

ip addr
ip route

Vérifier la configuration Proxmox

cat /etc/network/interfaces

Ce fichier peut contenir la configuration des interfaces physiques et des ponts réseau.

Attention : ne modifie pas le réseau d'un serveur distant sans disposer d'un accès de secours. Une erreur sur le pont réseau, l'adresse IP ou la passerelle peut rendre l'interface web inaccessible.

Pour exposer un service hébergé dans une VM, configure uniquement les règles de routage, de pare-feu et de redirection de ports nécessaires. Évite d'exposer directement l'interface d'administration Proxmox à Internet.

💽 Gestion du stockage

Proxmox VE permet d'utiliser différents types de stockage selon les besoins de l'infrastructure.

📁 Directory

Stockage dans un répertoire du système de fichiers, selon les types de contenu autorisés.

💽 LVM

Gestion de volumes logiques pour les disques des machines virtuelles.

🧱 ZFS

Système de fichiers et gestionnaire de volumes avec intégrité des données et fonctions avancées.

🌐 NFS / SMB

Stockage partagé sur le réseau, si le serveur de stockage est correctement configuré.

Vérifier les espaces de stockage

Depuis le terminal :

pvesm status

Pour contrôler l'espace des systèmes de fichiers :

df -h

Choisir un stockage adapté

  • Un stockage local convient à un hôte autonome.
  • Un stockage réseau peut faciliter le partage des données entre plusieurs nœuds.
  • ZFS peut être intéressant pour certaines configurations, mais nécessite de dimensionner correctement la RAM et les disques.
  • Un stockage partagé peut faciliter certaines migrations entre nœuds, selon le type de stockage et la configuration du cluster.

Important : la redondance d'un stockage ne remplace pas une sauvegarde indépendante.

💾 Sauvegardes et restauration

Les sauvegardes sont indispensables pour protéger les machines virtuelles et les conteneurs.

Proxmox VE intègre des outils de sauvegarde qui permettent de protéger les données et la configuration des invités.

Depuis l'interface web

  1. Sélectionner le centre de données ou le nœud.
  2. Ouvrir la section Sauvegarde.
  3. Ajouter un travail de sauvegarde planifié.
  4. Choisir le stockage de destination.
  5. Sélectionner les machines virtuelles et conteneurs concernés.
  6. Définir la planification et la rétention.
  7. Contrôler les résultats des tâches.

Les libellés exacts peuvent varier selon la version.

Sauvegarder une VM depuis le terminal

Exemple pour la machine virtuelle 100 :

vzdump 100 --storage local --mode snapshot

Cette commande suppose qu'un stockage appelé `local` est configuré et accepte les sauvegardes. Vérifie le nom du stockage avant utilisation avec `pvesm status`.

Restaurer une sauvegarde

La restauration peut se faire depuis l'interface web ou à l'aide des outils adaptés au format de sauvegarde et au stockage utilisé.

Avant de restaurer :

  • Vérifie que la sauvegarde est complète.
  • Contrôle l'espace disque disponible.
  • Vérifie l'identifiant de la VM ou du conteneur de destination.
  • Évite d'écraser une machine existante sans sauvegarde préalable.
  • Teste régulièrement une restauration réelle.

Stratégie recommandée

1. Sauvegarde locale

Pour accélérer certaines restaurations, si le stockage local est disponible.

2. Copie indépendante

Sur un NAS, un autre serveur ou un support distinct.

3. Test de restauration

Vérifier que les sauvegardes permettent réellement de récupérer les services.

Pour une solution dédiée, tu peux également étudier Proxmox Backup Server si cette page existe sur ton wiki.

🔐 Sécurité et administration

🔑 Comptes

  • Utiliser des comptes nominatifs.
  • Limiter les droits selon les responsabilités.
  • Activer l'authentification multifacteur lorsque c'est possible.

🛡️ Réseau

  • Restreindre l'accès au port d'administration.
  • Utiliser un réseau d'administration dédié si possible.
  • Sécuriser SSH et les accès distants.

🔄 Maintenance

  • Installer les mises à jour adaptées.
  • Surveiller les journaux.
  • Contrôler l'état des disques.
  • Tester les sauvegardes.

Vérifier les ressources

free -h
df -h
uptime

Contrôler les services principaux

systemctl status pveproxy
systemctl status pvedaemon
systemctl status pvestatd

Consulter les journaux

journalctl -p err -b

Cette commande affiche les erreurs du démarrage en cours. Pour approfondir, examine les journaux du service concerné.

🔧 Dépannage

❌ Interface web inaccessible

systemctl status pveproxy
ip addr
ip route

Vérifie l'adresse IP, la connectivité réseau, le port 8006 et l'état du service web.

💽 Stockage indisponible

pvesm status
df -h

Vérifie l'espace disponible, l'état du stockage et les éventuelles erreurs de montage.

🖥️ VM impossible à démarrer

Vérifie les ressources disponibles, la configuration de la VM, les disques associés et les journaux de tâches de Proxmox.

🌐 VM sans réseau

Contrôle le pont réseau, la carte virtuelle, le réseau du système invité et les règles du pare-feu.

🏠 Proxmox VE dans un homelab

Proxmox VE permet d'héberger plusieurs services sur un serveur physique, tout en séparant les systèmes invités.

Exemple d'organisation :

Serveur physique
    |
    +-- Proxmox VE
          |
          +-- VM 100 : Ubuntu Server
          |       +-- Apache
          |       +-- [[MariaDB]]
          |
          +-- VM 101 : Windows Server
          |       +-- Active Directory
          |
          +-- VM 102 : Debian
          |       +-- Services de test
          |
          +-- CT 200 : Service Linux léger

Cette organisation est un exemple : les ressources, le réseau et le niveau d'isolation doivent être adaptés aux services réellement hébergés.

Attention : si tous les services reposent sur un seul serveur physique, une panne de ce serveur peut interrompre toutes les VM et tous les conteneurs qu'il héberge. Les sauvegardes indépendantes restent donc essentielles.

🧾 Checklist de mise en service

  • [ ] Vérifier la compatibilité du processeur.
  • [ ] Sauvegarder les données présentes sur le disque cible.
  • [ ] Installer Proxmox VE depuis l'image ISO officielle.
  • [ ] Configurer une adresse IP stable et le nom du serveur.
  • [ ] Vérifier l'accès à l'interface web.
  • [ ] Configurer les dépôts et les mises à jour.
  • [ ] Contrôler le stockage disponible.
  • [ ] Vérifier le réseau et le pare-feu.
  • [ ] Créer une VM de test.
  • [ ] Créer un conteneur si nécessaire.
  • [ ] Configurer des sauvegardes indépendantes.
  • [ ] Tester la restauration d'une VM.
  • [ ] Sécuriser les comptes d'administration.

📚 Pages associées

🌐 Documentation officielle

Pat Informatik
Proxmox VE • KVM • LXC • Linux • Virtualisation • Homelab