En discussion sur un salon Matrix dédié à l’auto-hébergement, a été lancé le nom de proxmox VE.
Après prise d’information sur ce serveur debian, je me suis rendu compte qu’il permettait de gérer des serveurs baremetal et proposait du KVM et du LxC ainsi que des outils d’hypervision.
C’est en licence AGPL et développé par la société Proxmox Gmbh.
Plusieurs personnes sur le salon dans lequel j’ai échangé disent l’utiliser avec succès. Ils ont même des conteneurs LxC sous YunoHost.
Proxmox, de ma découverte récente, pourrait se rapprocher plus du besoin que notre asso pourrait avoir dans quelques temps (un ou deux ans):
proposer le déploiement d’un nombre restreint d’applications
prévoir leur scalabilité et simplifier l’upscale (ou downscale)
les isoler pour la sécurité
proposer un système ldap ou oauth2 (which ever is more efficient)
On utilise énormément Proxmox chez les CHATONS, tu pourras trouver plusieurs fils de discussion à son sujet sur le forum.
De mon expérience, c’est un très bon outil, qui nécessite quand même des connaissances en administration Linux pour être correctement administré.
Sur l’infra de katzei on est monté a plus d’une vingtaine de vm sans soucis, j’ai connaissance de personnes l’utilisant en entreprise (avec des centaines de coeurs sur plusieurs gros serveurs de virtualisations) et ça marche bien. donc pas de soucis.
C’est des VM construites sur KVM donc niveau sécurité c’est pas mal, pas parfait (si il existait une solution parfaite on l’utiliserait tous) mais il y a un bon niveau d’isolation
ça promox ne le fait pas directement mais il permet d’héberger une vm qui fournit ce service (a toi de l’administrer par contre). Mais je crois qu’il est possible de se connecter a proxmox via un LDAP (je n’ai jamais essayé on a fait le choix de ne pas utiliser LDAP dans l’infra Katzei)
̈Point bonus proxmox (l’entreprise) propose aussi un serveur de backup fait pour s’integrer avec proxmox (l’hyperviseur). Je n’ai pas testé (la solution est sortie plusieurs années apres la creation de l’infra de Katzei qui utilise borg) mais j’en ai des bons retours.
Je peux confirmer qu’on peut se connecter à un Proxmox via le LDAP et que ça fonctionne bien !
Et la solution de backups fournie par Proxmox est très efficace aussi. Proxmox + ZFS =
disclamer: je n’utilises que des VM et je ne suis vraiment pas fan de la conteneurisation (plus par flemme de l’étudier de près qu’autre chose) même si je l’utilise pas mal en tant que dev.
tout tes conteneurs utilisent le kernel de l’host donc ça ouvre un peu plus de failles, a voir a quel point ça te touche. En pratique pour une petite structures la virtualisation n’est pas un gros overhead.
Pour katzei on a 2 services ouverts au publique et on a fait le choix que chaque service (ouvert au publique ou non).
Au total on a 10 vm pour faire katzei (sans compter les backup et la page de status qui sont sur d’autres machines physiques): DNS, mail, vpn, bastion, services dynamiques maisons (genre le formulaire de contacte du site web), reverse proxy, git, supervision et les deux services (nextcloud et bitwarden)
Le stockage des machines hors données utilisateur prennent environ 5Go/marchine (donc chez nous on prend 50Go pour les VM et 120Go pour les données utilisateurs)
la RAM: c’est plus compliqué a comptabiliser, mais par défaut chaque VM a 2Go de RAM il n’y a que nextcloud qui en ai bien plus (parce que nextcloud est très gourmand en RAM) dont une partie est dé dupliquée donc en pratique katzei prend moins de 16Go de RAM
Le CPU: a notre échelle c’est négligeable (5% d’un R7-2700 même en prenant en compte des VM hors de katzei)
donc a moins que tu ne soit vraiment très limite sur tes moyens ou que tu vises de l’hébergement a grande échelle, te poser la question de savoir si une solution est plus lourde qu’une autre me semble un peu hors de propos, c’est pas ça qui est limitant. Je pense que la question de ton expertise (tu es plus a l’aise avec de l’administration de VM ou de conteneurs ?) est bien plus importante.
Avant de commencer fait toi des bac a sable, essaye des trucs, plante toi parce que tu finira forcement par faire des conneries (on en fait tous) donc autant les faire et apprendre tant qu’on a rien mis en place d’important.
edit: je crois que je vais finir par faire une page avec les questions a se poser avant de faire de l’hébergement, j’ai l’impression de souvent dire la même chose
Si je me permets, c’est justement que je suis neuf sur le sujet et sans expérience autre que mes lectures et quelques bidouillages LAN. J’ai fait du développement pro mais maintenant à part avoir des idées, j’ai un temps limité pour les mettre en application tout seul.
Je trouve le travaille en équipe bien plus valorisant. Biensûr, je fais des protos, des proofs of concept sur certains sujets de devs mais j’espère qu’il y a des gens bcp plus qualifiés que moi pour répondre aux questions :
YunoHost et/ou Proxmox et/ou Nixos ?
VM et/ou LXC et/ou Podman ?
Infra IaC avec Terraform / Ansible + CI/CD ?
Et comment tout ça peut s’articler, young padawan je suis !
Mes objectifs sont :
minimiser l’impact environnemental
permettre le scaleup et scaledown
optimisation/mutualisation de l’usage des ressources applicatives
rendre le déploiement d’application le plus simple possible en CI/CD et pouvoir envisager du bleu/vert voir du canary
maintenir une sécurité acceptable
Dans mes recherches, je n’ai pas trouvé de chiffres récents comparant les perfs LXC avec KVM et une machine physique.
J’ai beaucoup entendu ça aussi, mais aussi quelqu’un râler à ce propos, comme quoi cépavré !
Je m’y connais peu et là où on l’utilise (à Coopaname) on est large en RAM, donc je m’avance pas plus
Sur les questions que tu poses, tu ne trouveras pas de réponse définitive. Si les technologies co-existent, c’est aussi parce qu’elles apportent des solutions différentes les unes des autres. Essaie par toi-même, fais un POC sur Yunohost, Proxmox, NixOS, LXC, Podman, VM, Terraform, Ansible, etc…