Optimiser le stockage Ceph avec des solutions de réseau avancées
Collaborateurs : Marc THOLL, Pol WARNIMONT, Marcin RZECZKOWSKI
Défis posés par le stockage traditionnel
Au cours des dernières années, notre entreprise a utilisé sa pile de virtualisation avec une approche de stockage traditionnelle, en utilisant des appliances de stockage dédiées comme les baies de stockage Dell EMC et en les connectant à nos serveurs via iSCSI ou Fibre Channel (FC). Pour la redondance, nous avons doublé les appliances. Nos solutions de stockage full-flash ont été fournies par Huawei.
Avec nos efforts continus pour fournir à nos clients des ressourcescloud , provenant entièrement des frontières du Luxembourg, garantissant la souveraineté des données et avec notre projet de recherche sur l'IA, le besoin d'une solution de stockage de données hautement évolutive et fiable a augmenté de manière significative.
Première tentative de solution
Pour répondre à cette nouvelle demande, nous avons d'abord choisi de modifier notre approche. Nous avons opté pour un réseau de stockage dédié (SAN). Nous opérons dans deux centres de données et avons mis en place deux SAN indépendants, chacun utilisant un commutateur par côté, connecté via deux longueurs d'onde passives géographiquement distinctes. Les baies de stockage et les serveurs ont été connectés aux deux SAN, ce qui nous a permis de disposer de quatre chemins de stockage. Cette configuration utilise des chemins multiples pour assurer la redondance sur plusieurs chemins, qui eux-mêmes ne sont pas redondants. Chaque serveur disposait de deux cartes réseau, un port par carte étant connecté à chaque SAN, ce qui donnait un total de quatre chemins. Cette configuration garantit que nous ne perdrons jamais plus de deux chemins en cas de défaillance d'un seul périphérique.
Malgré ces mesures, une fois que tout a été mis en place, nous avons remarqué que nous n'obtenions pas les performances attendues. Les systèmes de stockage traditionnels présentent souvent des difficultés telles que des problèmes d'évolutivité, des frais généraux de gestion et un verrouillage des fournisseurs, ce qui a motivé notre recherche de solutions alternatives.
Compte tenu du paysage géopolitique actuel et du manque de matériel de stockage fabriqué en Europe, nous avons choisi d'adopter une approche différente. En éliminant le verrouillage des fournisseurs et en revenant à un aspect essentiel de notre identité - les solutions à source ouverte - nous visons à encourager l'innovation et à maintenir la flexibilité de notre infrastructure.
Explorer Ceph : Une nouvelle approche du stockage
Nos administrateurs système, toujours désireux d'explorer de nouvelles technologies, nous ont proposé l'idée d'utiliser Ceph pour nos besoins de stockage. Nos expériences passées avec les systèmes de stockage traditionnels n'avaient pas été très satisfaisantes, et nous étions motivés pour explorer quelque chose d'innovant et de potentiellement plus robuste.
Ceph est une plateforme de stockage open-source conçue pour offrir d'excellentes performances, une grande fiabilité et une grande évolutivité. Elle unifie le stockage d'objets, de blocs et de fichiers dans un seul cluster, ce qui en fait une solution polyvalente pour divers besoins de stockage.
Après une analyse, concluant que Ceph est capable de répondre à nos besoins en termes de redondance et d'évolutivité, nous sommes passés au choix du matériel adéquat. La décision s'est portée sur les serveurs Supermicro. Ces serveurs sont équipés de deux processeurs AMD EPYC 7313 à 16 cœurs et de 128 Go de RAM.
Pour la configuration du réseau, nous avons décidé d'utiliser l'infrastructure existante avec deux SAN indépendants. Après quelques difficultés initiales pour trouver les configurations correctes et attendre l'arrivée du matériel, nous étions prêts à commencer les tests. Cependant, nous avons rapidement rencontré un obstacle de taille.
Dans Ceph, il existe deux réseaux distincts :
- Réseau de grappes :
- Utilisé par les serveurs pour synchroniser les données entre eux.
- Réseau public :
- Gère le trafic de gestion de la grappe (MONITOR).
- Facilite les connexions Ceph aux utilisateurs de données, tels que les hôtes de virtualisation.
Le défi auquel nous avons été confrontés était que le réseau public de Ceph ne peut être configuré qu'avec un seul réseau IP. Cette limitation aurait pu constituer un obstacle important à nos exigences en matière de redondance.
Pour résoudre ce problème, nous avons envisagé deux solutions potentielles :
- Nouveaux switches châssis :
- Empilement de switches avec LACP :
L'une des propositions consistait à acheter de nouveaux switches châssis. Cette solution aurait pu résoudre le problème, mais elle était très coûteuse et n'offrait que peu d'avantages supplémentaires.
La seconde idée, également largement suggérée dans les forums, consistait à empiler les switches et à utiliser le protocole LACP (Link Aggregation Control Protocol). Cependant, cette approche était en contradiction avec notre philosophie initiale de conception des deux SAN. Nous avions délibérément évité l'empilage en raison d'expériences négatives passées, telles que des piles qui se divisaient pendant le fonctionnement, entraînant des pannes de réseau ou créant des boucles qui perturbaient l'ensemble du réseau.
Solutions de routage innovantes pour Ceph
En réfléchissant à des solutions, notre département réseau a proposé une idée innovante. Bien que le réseau public de Ceph ne puisse gérer qu'un seul préfixe IP, il n'est pas nécessaire que toutes les IP se trouvent dans le même domaine de diffusion. Cette idée nous a amenés à considérer le routage du trafic comme une solution viable.
Configuration initiale du routage
Notre solution de routage initiale consistait à connecter deux nœuds Ceph à chaque commutateur de couche 3 du SAN. Les switches devaient exécuter le protocole OSPF (Open Shortest Path First) et annoncer les réseaux de chaque nœud. Chaque nœud était connecté en utilisant ses quatre interfaces dans un seul canal de port LACP (Link Aggregation Control Protocol). Cette approche présentait plusieurs avantages et inconvénients :
Pour :
- Facilité de configuration : OSPF fonctionne sur seulement quatre switches, ce qui simplifie le processus de configuration.
- Redondance de l'interface : LACP assure la redondance au niveau de l'interface, ce qui améliore la fiabilité.
Cons :
- Impact de la défaillance d'un commutateur : La perte d'un commutateur entraîne la perte de deux nœuds Ceph entiers, ce qui compromet la redondance.
- Équilibrage de charge limité : L'équilibrage de la charge est limité au tronc LACP, ce qui peut ne pas utiliser pleinement la bande passante disponible.
Solution de routage optimisée
Insatisfaits des limites de l'approche initiale, nous avons développé une solution plus robuste : le routage complet. Dans cette configuration, chaque nœud Ceph exécute FRRouting (FRR) et OSPF indépendamment. Cette configuration offre plusieurs avantages clés :
- Redondance renforcée : Chaque nœud est connecté à deux switches, ce qui garantit que la défaillance d'un commutateur n'entraîne pas la perte d'un nœud. Pour renforcer encore la fiabilité, le système BFD (Bidirectional Forwarding Detection) est utilisé pour détecter les défaillances en moins d'une seconde en cas de défaillance d'un ou de plusieurs liens. En outre, le routage ECMP (Equal-Cost Multi-Path) est utilisé pour fournir plusieurs itinéraires redondants, améliorant ainsi la résilience globale du réseau.
- Utilisation efficace des interfaces : Le réseau public et le réseau de cluster fonctionnent au sein du même réseau routé, ce qui permet à Ceph d'utiliser dynamiquement la totalité de la bande passante du serveur pour les deux réseaux en fonction des demandes actuelles.
- Stabilité des services : Les services publics et en grappe fonctionnent sur des IP de bouclage, ce qui garantit qu'ils ne sont pas liés à des interfaces spécifiques susceptibles de tomber en panne.
- Meilleur équilibrage de la charge : L'équilibrage de la charge est amélioré par l'utilisation du routage ECMP (Equal-Cost Multi-Path), qui fournit à chaque destination huit chemins distincts. Cette configuration permet de répartir efficacement le trafic sur plusieurs routes, d'optimiser l'utilisation de la bande passante et d'assurer une répartition équilibrée de la charge.
Résultats et perspectives
Après avoir implémenté la solution de routage complète pour notre cluster Ceph, nous avons effectué une série de tests pour évaluer ses performances et sa redondance. Il est important de noter que l'instance Ceph n'est pas encore très optimisée, mais les premiers résultats sont prometteurs. Nous avons obtenu des taux de lecture/écriture aléatoires de 3,6 Go/s, ce qui représente une amélioration significative par rapport à notre configuration précédente. Ces tests ont été réalisés à l'aide d'outils d'analyse comparative standard afin de garantir la précision et la fiabilité des résultats.
Outre les tests de performance, nous avons également évalué la redondance du système. Nos tests ont révélé qu'un nœud peut perdre tous ses liens sauf un sans que cela n'ait d'impact sur la fonctionnalité, à l'exception d'une réduction de la bande passante disponible. De même, tous les liens inter-centres de données (Inter-DC), sauf un, peuvent tomber en panne sans affecter le système, bien que cela entraîne également une réduction de la bande passante disponible. Ces résultats confirment la robustesse et la fiabilité de notre solution Ceph routée.
Projets futurs
Pour l'avenir, nous envisageons d'apporter plusieurs améliorations à notre infrastructure Ceph. L'un de nos principaux objectifs est d'ajouter davantage de liens inter-DC entre les SAN. Cette expansion permettra un meilleur équilibrage de la charge du côté inter-DC, garantissant ainsi des performances et une résilience optimales.
En évaluant et en affinant continuellement la configuration de notre réseau, nous visons à obtenir un cluster Ceph hautement optimisé qui réponde à nos exigences en matière de performance et de redondance, et qui soutienne en fin de compte plus efficacement nos activités principales.
Derniers articles
Echangez avec un expert
Échangez directement avec nos experts, prêts à vous offrir des conseils et des réponses personnalisées.