Un fil sur Proxmox : solution légère et puissante de virtualisation.
Histoire :
Proxmox est une société autrichienne créée en 2004.
Elle propose la solution de virtualisation 'Proxmox VE' (GPL) et la solution 'Mail Gateway' (commerciale) relais mail très complet.
Elle vit de la vente de 'Mail Gateway' et du support.
Technologie :
Proxmox est une distribution basée sur Debian qui permet de créer un hôte de virtualisation pour OpenVZ et pour KVM.
OpenVZ est une virtualisation par conteneur :
- les VM sont uniquement des Linux (32 ou 64 bits),
- le noyau des VM est, en réalité, le noyau de base de Proxmox (Debian amd64),
- les process sont strictement séparés : chaque VM dispose de son propre INIT de n° de process 1,
- c'est la virtualisation la plus performante : la perte de puissance est minimale,
- on peut atteindre aisément 20, 30 ou 40 VM avec très peu de ressources,
- OpenVZ propose un grand choix de template notamment avec certains logiciels préconfigurés (MediaWiki, SugarCRM, ...).
KVM est une virtualisation complète (de type 1) :
- c'est le prolongement de qemu,
- les VM peuvent être Windows, Linux, Bsd, en 32 ou 64 bits,
Proxmox fournit une iso dite "bare-métal" permettant une installation de l'hôte en quelques minutes.
Mais Proxmox est aussi installable SUR une Debian (amd64) dument préparée.
L'interface de gestion est accessible directement sous https avec l'adresse ip de l'hôte.
On peut y gérer la création de VM, le démarrage/arrêt, adapter les ressources, accéder à la console de la VM (avec vnc).
On peut aussi gérer le stockage, le backup et les services liés à l'hôte.
Enfin on peut clusteriser 2 ou plus hôtes avec migration de VM d'un hôte vers l'autre.
(Mais il n'y a pas encore de 'high availability' = redémarrage automatique sur un autre hôte.)
Stockage :
Le stockage des VM peut être local ou réseau. (Les VM OpenVZ ne sont stockés qu'en local !).
En local, les VM peuvent être stocké dans une arborescence ou dans un logical volume LVM.
En réseau, on peut stocker les VM (de type KVM) en NFS, en iSCSI ou en LVM sur iSCSI.
Le stockage conseillé est LVM (en local ou en réseau).
Réseau :
Proxmox utilise, par défaut, des bridges sur interfaces réseau (les interfaces physiques ne sont pas assignables directement à une VM).
Mais on peut aussi utiliser une configuration routée ou du NAT.
De plus, il y a possibilité d'utiliser des VLAN et du bonding (agrégation d'interfaces).
Il est nécessaire de configurer (manuellement) l'hôte via le fichier /etc/network/interfaces.
(L'iso bare-metal configure au moins le bridge de la première interface.)
(Je ne sais pas créer un switch virtuel reliant uniquement 2 VM ... parce que je n'ai pas essayé.)
Backup :
Le backup repose sur la commande vzdump (pour OpenVZ et KVM).
Il est possible de backupper VM en marche ou non.
Il est possible d'utiliser la fonction snapshot de LVM si la VM est stocké sur LVM.
Enfin les backup peuvent être programmables et créés via l'interface web.
Il est facile de dupliquer une VM KVM mais penser à supprimer/recréer l'interface réseau pour avoir une nouvelle adresse MAC.
Astuces :
Comme l'iso bare-metal ne gère pas le raid soft, je préconise d'installer d'abord une Debian (Lenny Amd64) sur une organisation disque utilisant du raid soft (mdadm) sur lequel on déclare un espace LVM.
Pensez à créer dès le début les bridges sur chaque interface réseau : il doit être possible de les appeler VMBR_LAN1 plutôt que VMBR0.
Ajoutez à l'hôte postfix et configurez le monitor de mdadm pour recevoir les alertes en cas de panne raid !
Ne pas escomptez tester un firewall avec une seule interface physique : un firewall doit avoir au moins 2 interfaces virtuelles associées à 2 interfaces physiques distinctes : dans le cas contraire, le firewall verra de suite votre adresse MAC sur les 2 interfaces virtuelles et ne pourra bien fonctionner !
C'est assez bluffant pour un usage perso (et surtout plus léger qu'un ESXi : interface web).