Ce que vous cédez
Un serveur avec 64 gigaoctets de RAM qui consacre vingt-trois pour cent de sa mémoire à lui-même, et vous qui cherchez un dimanche soir pourquoi la quatrième machine ne veut pas démarrer. C'est le moment où vous vous demandez si vous n'auriez pas mieux fait de choisir autre chose.
Proxmox VE n'est pas un produit que vous achetez. C'est un système Debian avec son propre noyau, une interface web sur le port 8006, et deux technologies de virtualisation qui vivent côte à côte : KVM pour les machines virtuelles complètes, LXC pour les conteneurs. Vous l'installez à partir d'une ISO, vous obtenez un shell root et un navigateur, et ensuite c'est à vous de jouer.
La question n'est pas de savoir si Proxmox est bon. La question est de savoir s'il vous convient.
Ce que vous cédez
Proxmox exige une machine complète. Pas un bureau où vous faites encore tourner autre chose à côté, pas un NAS qui fait aussi de la virtualisation. Vous donnez tout le disque, et en échange vous obtenez un hyperviseur que vous n'utilisez plus comme un Linux ordinaire.C'est le premier coût. Si vous voulez aussi utiliser votre serveur comme serveur de fichiers, comme médiacentre, comme tout-en-un, alors vous le faites dans un conteneur ou une VM par-dessus Proxmox. Pas à côté.
L'interface web sur `https://ip:8006` est utilisable mais pas belle. Vous apprenez à vivre avec. Celui qui veut monter quelque chose rapidement et ne jamais ouvrir un terminal s'est trompé d'adresse.
Le stockage que vous devez choisir vous-même
`pvesm` est la commande avec laquelle vous gérez le stockage. Vous ajoutez des datastores, vous regardez leur état, vous déterminez quel type de contenu peut y résider.``` pvesm add dir local-backup --path /mnt/backup --content backup pvesm set local-backup --content backup,iso pvesm status ```
Cette première ligne enregistre un dossier comme emplacement de stockage. La deuxième détermine ce qui peut s'y trouver : sauvegardes, fichiers ISO, images de VM. La troisième montre ce que vous avez.
Proxmox prend en charge les disques locaux, NFS, iSCSI, Ceph et ZFS. Cette liste est impressionnante et c'est précisément le problème. Chaque option a ses propres règles concernant les snapshots, la migration, ce qui fonctionne ou non dans un cluster.
ZFS sur un seul nœud, c'est un plaisir. ZFS dans un cluster sans stockage partagé signifie que vous ne pouvez pas migrer vos VM comme ça. Ceph règle ce problème et exige trois nœuds minimum, plus des disques que vous auriez utilisés ailleurs. Si vous choisissez la simplicité, vous perdez la flexibilité. Si vous choisissez la flexibilité, vous perdez vos soirées.
Réseau et pare-feu
Bridges, VLANs, interfaces virtuelles. Vous reproduisez des topologies réseau qui coûtaient autrefois une armoire.Le pare-feu passe par `pve-firewall`. Vous compilez des règles, vous démarrez le service, vous l'arrêtez, ou vous simulez ce qui se passerait.
``` pve-firewall status pve-firewall restart pve-firewall compile ```
`pve-firewall status` montre l'état actuel. `pve-firewall restart` recharge le service sans mettre vos VM hors ligne. Ce dernier point est essentiel : vous adaptez des règles pendant que tout continue de tourner.
Le pare-feu n'est pas le pare-feu de votre routeur. C'est une couche par-dessus votre configuration réseau, et si vous ne faites pas attention à l'ordre des règles, vous vous excluez vous-même. Littéralement. L'interface web sur 8006 écoute aussi sur un port.
Conteneurs avec `pct`
Pour les conteneurs LXC, il y a une commande que vous taperez souvent.``` pct list pct start 101 pct stop 101 pct enter 101 pct create 102 local:vztmpl/debian-12-standard_12.7-1_amd64.tar.zst --storage local-lvm --memory 2048 pct resize 102 rootfs 20G ```
`pct list` montre ce qui tourne. `pct enter` vous donne un shell dans le conteneur sans SSH. `pct create` en crée un nouveau à partir d'un template, et `pct resize` agrandit le disque quand vous découvrez que vingt gigaoctets ne suffisent pas.
Les conteneurs partagent le noyau avec l'hôte. Cela les rend légers et rapides, et cela les rend aussi vulnérables : un conteneur n'est pas une frontière de sécurité comme l'est une VM. Si vous faites tourner quelque chose d'une partie inconnue, utilisez KVM.
Machines virtuelles et API
Pour les machines KVM, il n'y a pas de commande comme `pct`. Vous les gérez via l'interface web ou via l'API.`pvesh` est l'interface en ligne de commande de cette API. Vous pouvez tout faire avec, ce que l'interface web peut faire, et plus encore.
``` pvesh get /nodes pvesh get /nodes/pve/qemu pvesh ls / pvesh usage /pools ```
`pvesh get /nodes` montre les nœuds de votre cluster. `pvesh get /nodes/pve/qemu` montre les VM sur ce nœud. `pvesh ls /` vous aide à découvrir les chemins de l'API, et `pvesh usage /pools` explique comment fonctionne un chemin donné.
C'est là que Proxmox devient intéressant pour qui automatise. Ansible, Terraform, vos propres scripts : tout ce qui peut parler en HTTP peut parler à Proxmox. Le prix à payer, c'est que vous devez apprendre l'API, et elle est étendue.
Clusters et le vrai travail
`pvecm` gère les clusters.``` pvecm create mijn-cluster pvecm add 10.0.0.2 pvecm delnode oude-node pvecm status ```
Vous créez un cluster, vous ajoutez des nœuds, vous les supprimez. La configuration se synchronise automatiquement entre tous les nœuds.
Le clustering, c'est là que Proxmox vaut son argent et là qu'il commence à vous coûter du temps. La migration à chaud entre nœuds fonctionne, mais seulement si votre stockage le permet. Centraliser les sauvegardes fonctionne, mais exige un emplacement de stockage partagé. Vous intégrez la tolérance aux pannes, mais vous avez besoin d'un quorum : avec un nombre pair de nœuds, le cluster se paralyse lui-même.
Trois nœuds, c'est le minimum pour un cluster capable de résister à une panne. Deux nœuds signifient un qdevice ou une troisième voix qui ne fait rien d'autre. Personne ne vous le dit à l'avance.
Versions et mises à jour
`pveversion` vous dit où vous en êtes.``` pveversion pveversion -v ```
La première ligne donne la version principale. La deuxième énumère tous les sous-paquets, ce dont vous avez besoin quand vous cherchez un problème de compatibilité ou que vous planifiez une mise à niveau.
La mise à jour se fait avec les outils Debian standard, mais pas à l'aveugle. En production, vous lisez d'abord les notes de version, puis les problèmes connus, et seulement ensuite vous mettez à jour. Un hyperviseur qui s'arrête au milieu d'une mise à jour, c'est un hyperviseur sur lequel tournent toutes vos VM.
Ce qui vit autour
Il existe des outils qui fonctionnent avec Proxmox sans en faire partie.Field Monitor est un client de bureau à distance pour GNOME qui se connecte aux VM via RDP, SPICE ou VNC, avec une prise en charge intégrée de Proxmox VE et de QEMU/KVM via libvirt. Vous démarrez, arrêtez ou redémarrez une VM sans ouvrir l'interface web.
Snowglobe, de Bilal Elmoussaoui sous GPL-3.0-or-later, communique via DBus avec les instances QEMU en cours d'exécution. Il prend en charge le clavier, la souris et le multi-touch.
``` flatpak install flathub com.belmoussaoui.snowglobe flatpak run com.belmoussaoui.snowglobe ```
Ce n'est pas un remplacement de l'interface complète. C'est une visionneuse légère pour qui veut consulter rapidement une VM QEMU sur un système GNOME.
Virtual Surround apporte le son 3D aux casques sous Linux via des fichiers HRIR-WAV, comparable à HeSuVi sous Windows. Vous l'activez ou le désactivez sans redémarrer le service audio. Pertinent quand vous faites tourner des applications gourmandes en audio dans une VM et que vous voulez les écouter via un casque. Pour le reste, aucun rapport avec Proxmox.
L'alternative que vous ne mentionnez pas
Il y a VMware. Il y a Hyper-V. Il y a XCP-ng.VMware ESXi a été pendant des années la norme en entreprise, avec des contrats de support et un écosystème que Proxmox n'a pas. Depuis que Broadcom a redessiné les licences, beaucoup d'organisations cherchent ailleurs. Ce n'est pas parce que Proxmox est meilleur, mais parce que la facture a changé chez l'autre.
Hyper-V est fourni gratuitement avec Windows Server et s'intègre à Active Directory d'une manière que Proxmox n'égalera jamais. Si vous êtes déjà dans un environnement Microsoft, le calcul est différent.
XCP-ng est le successeur open source de XenServer, avec Xen comme hyperviseur au lieu de KVM. Moins d'utilisateurs, communauté plus petite, architecture différente.
Aucune de ces solutions n'est gratuite au sens où elles ne coûtent rien. Elles coûtent du temps, des connaissances, ou de l'argent. Parfois les trois.
De quoi cela dépend
Proxmox convient quand vous voulez consacrer entièrement une ou plusieurs machines physiques à la virtualisation, quand vous ne craignez pas le terminal, et quand vous préférez garder vous-même le contrôle plutôt que de signer un contrat de support.Il ne convient pas quand vous voulez une machine qui fait aussi tout un tas d'autres choses, quand vous n'avez pas envie de vous soucier du quorum de cluster et des choix de stockage, ou quand vous avez besoin de quelqu'un qui décroche le téléphone quand ça tourne mal.
La licence est gratuite. Le support est un abonnement que vous achetez par CPU, et la communauté est active mais bénévole.
Vous pouvez tout faire vous-même. C'est l'offre et c'est le prix. Quand vous vous retrouvez à onze heures et demie du soir un dimanche devant un écran noir, il n'y a personne qui viendra vous aider à moins que vous ne payiez pour cela.