Featured image of post Presentation Proxmox

Presentation Proxmox

Présentation de mon Homelab Proxmox

Proxmox est une plateforme Open Source de virtualisation. Elle est basé sur la distribution Debian, l’hyperviseur Kvm et le système de conteneur LXC qui a l’avantage de pouvoir deployer des services en consommant trés peu de ressource.

Proxmox gère aussi le clustering (grapes de machines pour haute disponibilité des services et une gestion globale des ressources), embarque un système de sauvegarde et de restauration trés performent et est administrable simplement avec un navigateur. La plateforme est gratuite mais propose une version ‘Prémium’ avec un support pour les professionels. Proxmox est beaucoup utilisée dans les petites entreprises.

Présentation de mon HomeLab

J’utilise actuellement deux serveurs Proxmox pour héberger tous mes services, un principal qui est le plus puissant et un secondaire en secours et pour la domotique. Il ne sont pas en cluster car je n’en ai pas l’utilité pour mes services hébergés. En cas de panne ou de travaux, la restauration de l’image d’un conteneur sur un autre noeud Proxmox (une autre machine sous Proxmox) se fait en moins d’une minute.
J’utilise quasi exclusivment que des conteneurs LXC pour déployer mes services. J’utilise des machines virtuelles (plus lourd en terme de ressource) que quand je n’ai pas le choix.

Conteneur LXC

Les conteneurs LXC contrairement au machine virtuelle, partage le même noyau que le système d’exploitation de la machine mais le service est isolé du reste du système avec son propre environnement d’éxécution. C’est pour cela qu’ils sont beaucoup plus léger tout en acceptant un compromis au niveau de la sécurité (partage du noyau avec le système d’exploitation) et de la prise en charge du matériel de la machine.

Je prend comme exemple, le conteneur PiHole (un serveur DNS Auto hébergé). Vous pouvez voir qu’il ne consomme que 50Mo de Ram et 2Go d’espace disque !! Il ne consomme aussi quasi rien en charge CPU alors qu’un seul coeur virtuel lui a éte attribué.

Le conteneur Pihole

Le système de backup intégré

Proxmox contient un système puissant de sauvegarde des machines virtuelles et des conteneurs LXC. La sauvegarde est compressée et contient tout ce qu’il faut pour redéployer un service facilement sur un autre noeud.

Concretement toutes les nuits à 2h00, tous mes conteneurs sont sauvegardés sur un NAS (voir présentation d’OMV).

La programmation d’une sauvegarde est trés simple à effectuer avec 3 modes : Le Snapshot, le Suspend et le Stop suivant la durée d’indisponibilité consenti. Le plus long, le Stop est de l’ordre d’une minute ou un peu plus et de quelques secondes pour le Snapshot. Ces valeurs sont a pondérées en fonction de votre matériel et du lieu de la sauvagerde (locale ou réseau). La sauvegarde de l’ensemble des conteneurs prend à peu prés 6 minutes chez moi à travers le réseau local (réseau 1Gb/s de bout en bout).

La programmation des sauvegarde


Ajout d’une sauvegarde

La sécurité

Proxmox contient un Firewall assez simple à configurer pour une personne ayant des connaissances de bases en réseau. La tache de configuration est facilité par l’utilisation d’alias et de macros pour la gestion des protocoles réseaux. Chaque étage a son propre Firewall : le Datacenter, le Noeud et le Conteneur ou la VM (machine virtuelle).

Un exemple de configuration pour un conteneur exposé depuis l’extérieur (accessible depuis Internet) ou seul le strict minimum est autorisé.

Remarque : Tous mes services exposés depuis l'extérieur ne sont accessibles que via le reverse-proxy 'swag‘ (nginx + fail2ban + Let’s Encrypt).

Règle du firewall

Conclusion : Proxmox pour quel usage

Proxmox est un outil puissant et simple à la fois, parfait pour monter son propre HomeLab. Les utilisations sont nombreuses :

  • Evaluer des services dans un environnement virtuel sans avoir besoin d’un serveur dédié,
  • Tester des mises à jour dans différents environements avant de les mettre en production,
  • Héberger ses propres services avec des outils pour les redéployer rapidement en cas de panne,
  • Evaluer d’autres systèmes d’exploitations (Par exemple une version Windows ‘Beta Insider’),
  • Faire des tests de vulnérabilités de système (virus, malware…) dans un environnementr isolé sans impacté le reste de votre réseau local. etc….
Généré avec Hugo
Thème Stack conçu par Jimmy