François Baillargeon
Linux Nerd
"Pour beaucoup d'organismes publics et d'entreprises, l'inflation des coûts est une véritable crise des flux de trésorie."
L'infrastructure TI, on se le dira, c'est rendu vraiment cher.
Les enterprises reçoivent simplement des renouvellements qu'ils ne peuvent plus se permettre.
Pour un entrepreneur, il est important de pouvoir compter sur la prévisbilité.
Afin de donner un souffle d'air au entreprises d'ici et organismes locaux j'ai fini par développer ma propre recette.
Un concept qui utilises le même matériel, mais logiciels au coût plus faibles et prévisibles, simplement.

Pourquoi Proxmox + croit plutôt que de l'hyperconvergé?
Les deux outils que j'utilise pour cette migration sont Proxmox, une plateforme de virtualisation généraliste qui rivalise directement avec VMware, et Croit, une façon simple d'administrer des clusters de stockage Ceph.
Une question légitime : pourquoi ne pas simplement partir en hyperconvergé et faire rouler le calcul et le stockage sur les mêmes nœuds? En pratique, les déploiements hyperconvergés sont plus difficiles à administrer à long terme. Le calcul et le stockage se retrouvent à se disputer les mêmes ressources réseau parce qu'ils sont colocalisés, et on tombe dans le classique problème du « voisin bruyant » — une grosse VM qui fait quelque chose de gourmand en CPU (du transcodage, une grosse job SQL, peu importe) commence à affamer tout le reste sur cet hôte.
L'approche présentée ici garde Ceph comme couche de stockage complètement séparée, administrée via croit, et laisse Proxmox gérer le calcul. C'est plus simple à comprendre et plus facile à garder en santé dans le temps.
Pourquoi ce désign?
Cette conception utilise simplement une collection de serveurs standards et du logiciel libre au termes de licence abordable.
Qu'est-ce qui distingue cette solution?
La solution est championne dans la réduction des coûts totaux d'opération.
Et c'est ça qui compte.
Le système est-il facile à utiliser ?
L'équipement intégré est vraiment facile de gestion, tout peut se passer via l'interface graphique.
Coté Calcul: Proxmox
Coté Stockage: Croit
Pourquoi Ceph ?
Ceph nous permet de tirer parti de matériel plus hétérogène et parfois opportuniste.
Une liste de matériel exhaustive nous permet de revaloriser ou d'augmenter les période d'exploitation sécuritaire des équipements.
De blocs Légos pas trop exotiques au fond, et on s'en installes un bon nombre pour parer au pannes, easy!
La méthode en vidéo
Étapes
Ceph
Geré par Croit
L'environnement Ceph fournit.
- Disques
- Magasin ISO
Proxmox
Fournit
- Virtualisation
- Conteneurs
Conversion
Conversion:
- Linux
Notre système de démonstration, en virtualisation imbriquée comprends les compsantes suivantes:
Ceph:
1x Manager node 8GB/2 vCPU/32GB 1SSD
3x Storage node 16GB/4 vCPU/32GB 1SSD 1SSD/1HDD
Proxmox:
3x Compute node 16GB/4vcCPU/32GB 1SSD
Nous construisons ici un environnement virtuel à fin de test.
Ce désign est à titre indicatif pour élaboration de solution. Avant d'aller en production il est préférable de consulter nos experts pour une évaluation de vos besoins réels. C'est gratuit!

Étape 1 : Démarrer le conteneur de gestion croit
Tout commence avec un simple conteneur Docker sur une machine Ubuntu/Linux ordinaire — c'est le seul prérequis.
Connectez-vous en SSH à votre serveur de gestion, récupérez le conteneur selon les instructions de croit (pas besoin de proxy dans mon cas), et laissez-le démarrer.
ssh un_sudoer@ta_machine


docker run --rm -it --pull=always \ -v /var/run/docker.sock:/var/run/docker.sock \ croit/croit:latest /croit/bin/croit setup
Dans un environnement de test virtualisé, c'est un peu plus lent que sur du matériel physique, mais même là, le conteneur est léger et démarre en environ une minute.
Le configurateur vous demandera de choisir un proxy, dans notre cas c'est absent.
Vous obtenez dès le démarrage un mot de passe initial.

Configuration Web du conteneur
Joignez votre serveur avec l'IP ou le FQDN de votre host docker avec le mot de passe généré
https://fqdnmachin.local/

Acceptation de l'EULA

Mise en route des réseaux de service.
Pour accéder vos services et permettre au backend de discuter, il est impératif de mettre en route votre réseau.
⚠ Croit embarque un serveur DHCP et TFTP, il est donc important que seuls des appliances Croit soient sur le segment.

Votre réseau devrait normalement être ajouté dans le UI

Vos serveurs virtuels sont prêts au démarrage directement du réseau.

Les serveur doivent normalement démarrer et se joindre à la grappe automagiquement.
Il est ici temps de changer les nom d'hôte pour des valeurs adaptées à votre environnement.

Ajout des Moniteurs (MON)
Lors du démarrage l'installeur vous demande de créer :
Un moniteur (idéalement 3 en prod)
- Sur un disque SSD

La création des moniteurs est entièrement automatisée, et devrait apparaitre dans le panneau de gestion serveur.

Création des services de stockage des objets (OSD)
L'utilisation d'une grappe Ceph passe avant tout par la coordination des moniteurs, qui eux, garde une vue cohérente sur les objets stockés, et ensuite par le stockage des Objets eux même dans un service distinct, l'OSD
Le script d'installation prends completement en charge la création et le cycles de vie de OSD
Assignation des disques
Vous assignez simplement les disques restants dans l'interface via le bouton des rôles, lui donnant ensuite le rôle de OSD.
Ces disques seront reponsables de la capacité de stockage de votre grappe.
En laboratoire, les options par défaut avec un DB/WAL et une classe de matériel automatique est suffisante.

La création des osd devrait se réfleter dans votre interface avec osd.id_de_service
Le serveur est maintenant entièrement déployé
(Une alerte est possible de temps que tout soit synchronisé coté ntp)
Validation de la Crush Map
Dans le Menu "Crush" vous devriez voir la vue hiéarchique des placement de vos disques.
Création du pool de stockage pour les disques
Notre grappe de stockage n'aura qu'à ce stade une seule charge:
- Des disques Rados (RBD) entièrement distribués
Cette architecture nous permettras d'exposer nos services facile à Proxmox


Votre grappe devrait être en parfaite santé
Création de la clé d'accès
Dans la section "keys" créez une clé qui permettra a proxmox d'accéder nommée client.proxmox

L'installation de la couche stockage est donc complète!
Étape 2: Installation de l'hyperviseur Proxmox.
Installation d'un noeud de calcul.
Démarrez à partir de l'iso
Acceptez l'Eula.
Choisissez votre racine d'installation.
Comme il s'agit ici d'un environnement virtuel, le disque QEMU /dev/sda est utilisé

Choissisez votre zone de temps. Ici America/Toronto et U.S. English pour les locales.
Définissez le mot de passe root ainsi que les courriels pour les messages du système.

Définissez les interfaces réseau (une coquille s'est glissé dans notre configuration/capture d'écran, nous l'avons corrigé lors du démarrage)
Installation finale des paquets.

Votre interface devrait être maintenant accessible, l'url pour s'y connecter est fournie dans la console VGA
Connectez vous avec votre mot de passe root

Réseautique
Votre grappe Proxmox aura besoin de quatre(4) interfaces minimum.
- Le bond0(LACP) pour les VM raccordé au vmbr0 (bridge Linux)
- Corosync 1
- Corosync 2
- Le bond1(LACP) de Stockage qui peut rejoindre la grappe Ceph
Dans notre exemple comme il s'agit de virtualisation imbriquée, les liens LACP sont omis, rémplacés par nic-nb


Répétez les mêmes étapes pour les 2 autres serveurs.
Validation
Validez que tout vos réseau soient disponible, il suffit de pinger tout les hôtes à travers leur interfaces respectives.

Création de la grappe (cluster)
Une fois toute les étapes validées coté réseau, il suffit d'aller dans la section:
- Cluster -> Create Cluster et de donner au cluster un nom significatif, car celui-ci ne changeras jamais.
Vous définissez aussi à ca stade les réseau pour Corosync
- ring0
- ring1
L'utilisation de deux rondes est primordial pour conserver le Quorum lors d'une perte momentanée d'une des deux parties du réseau de manière prévue ou inopinée.
Jointure des autres membres de la grappe.
Une fois le cluster démarré, il suffit d'avoir les informations de jointure pour les autre serveurs membres dans la section:
- Cluster -> Join Information

Sur les autres serveurs:
- Cluster -> Join Cluster
Insérez les informations fournies par le membre original et mot de passe root.

Après avoir rechargé le WebUI, les 3 serveurs seront montrés dans la listes des ressources.Mise en route du stockage partagé
Sur le cluster Croit :
Config -> Keys
- Téléchargez votre clé et copiez la dans le presse-papier

- Téléchargez votre clé et copiez la dans le presse-papier
Sur le cluster Proxmox:
- Datacenter -> Storage -> Add -> RBD
ID: à votre choix
Pool: Créé avec Croit
Monitors: L'Ip de vos Moniteurs
Username: proxmox (client.proxmox sur Croit)
Keyring: Copié de Croit

Le stockage RBD est actif et partagé sur tout les noeuds.
L'installation de Proxmox est donc prète à recevoir des charges.
Étape3 : Conversion des charges avec Proxmox
S'assurer que vous avez une charge de test coté ESX, dans notre cas nous avons préalablement déployé Ubuntu 26.04LTS dans un serveur ESX local accessible du réseau Proxmox.

Éteindre la machine (important! Les imports à chauds sont encore mal supportés)
Sur le cluster Proxmox
Datacenter -> Storage -> Add -> ESXi
ID: esxdemo
Server: IP de votre serveur ESX
Username: root
Skip Certificate Verification: Oui (notre lab n'a pas de certificat valide)

Vos machines devraient donc être disponibles a l'import
Cliquer sur Import

Indiquer au convertisseur d'installer les disques et adapteur réseau VirtIO
L'outil de conversion va transferer le VMDK vers une image RBD directement
Démarrer la charge transférée
Tester que la charge fonctionne toujours

Conclusion
Il n'y a pas d'autre étapes!
Vous avez donc pu en suivant ce billet de blogue:
- Installer une grappe Croit pour Gérer Ceph.
- Installer une grappe Proxmox pour éxécuter des machines virtuelles.
- Transférer une charge linux de ESX vers Proxmox.
C'est tout, vous êtes libres des licences si chères de Broadcom, pour toujours sur du matériel qui vous appartient.
Rester en affaire, c'est aussi avoir des processus plus abordables.

