Ceph brise les barrières : un déploiement avec AMD EPYC atteint 1 To/s, la performance la plus élevée jamais enregistrée

Ceph brise les barrières : un déploiement avec AMD EPYC atteint 1 To/s, la performance la plus élevée jamais enregistrée

Une équipe d’ingénieurs a franchi une étape historique dans le domaine du stockage distribué : un cluster Ceph capable de soutenir une lecture en continu de 1 TiB/s, battant tous les records précédents connus. Ce succès résulte d’un déploiement extrême mêlant matériel de dernière génération, réseau haute performance et mois d’ajustements minutieux pour surmonter des obstacles techniques imprévus.

Ce projet, lancé en 2023, répond à une entreprise innovante qui a choisi de migrer son ancien cluster Ceph basé sur disques durs vers une infrastructure entièrement NVMe de 10 Po. La conception finale, réalisée en partenariat avec Clyso, s’appuie sur 68 nœuds Dell PowerEdge R6615 équipés de processeurs AMD EPYC 9454P (48 cœurs / 96 threads), 192 GiB de RAM DDR5, deux interfaces Mellanox ConnectX-6 de 100 GbE par nœud, et dix SSD NVMe Enterprise de 15,36 To chacun.

Le cluster, réparti sur 17 racks, a été déployé avec Ceph Quincy v17.2.7 et Ubuntu 20.04.6, atteignant un total de 630 OSD en production. La redondance réseau existante, conçue pour des opérations à haut débit, a été essentielle pour optimiser la performance de cette architecture.

Les ingénieurs soulignent que « l’objectif n’était pas uniquement d’atteindre un record, mais de le faire dans un environnement réaliste, avec du matériel de production et en conservant la stabilité du système ».

Le chemin vers un téraoctet par seconde n’a pas été sans défis. Lors des premières phases de test, la performance était bien en deçà des attentes, et des comportements erratiques apparaissaient. Après plusieurs semaines d’analyse, trois principaux goulets d’étranglement ont été identifiés et résolus :

1. La gestion des états de veille de la CPU (c-states), dont la désactivation dans le BIOS a permis une amélioration immédiate de 10 à 20 %.
2. La contention dans l’IOMMU lors des mappages DMA NVMe, corrigée en désactivant l’IOMMU au niveau du noyau.
3. La compilation optimisée de RocksDB, avec des flags spécifiques, a triplé la vitesse de compactage et doublé la performance en écriture aléatoire 4K.

Une fois ces ajustements effectués, le cluster a atteint 1,025 TiB/s en lecture séquentielle 4 Mo (avec 3 copies), 270 Go/s en écriture, 25,5 millions d’IOPS en lecture aléatoire 4K, et plus de 500 GiB/s en lecture avec une configuration de codage d’effacement 6+2.

Ce progrès a été rendu possible par une montée en charge proportionnelle des clients et des OSD, en optimisant la communication asynchrone et en évitant que les PGs entrent dans un état de latence critique. Selon l’équipe technique, « Ceph peut saturer deux interfaces de 100 GbE par nœud. Pour aller au-delà, des réseaux de 200 GbE ou plus seront nécessaires ».

Ce déploiement illustre que Ceph est capable de rivaliser avec des solutions de stockage propriétaires en matière de performance extrême, tout en restant une solution open source. Les prochains défis incluront l’amélioration de l’efficacité lors des opérations d’écriture massive et la résolution des problèmes liés à la latence des PGs, ainsi que la reconsidération du modèle thread des OSD pour dépasser le plafond actuel d’IOPS.

Selon David Carrero, co-fondateur de Stackscale (Groupe Aire), « Même si peu d’entreprises ont besoin de chiffres aussi extrêmes, la technologie Ceph est tout à fait adaptée à des projets concrets. Chez Stackscale, nous proposons des solutions sur mesure pour déployer Ceph dans des infrastructures dédiées, garantissant haute disponibilité, scalabilité et performance, tout en offrant une grande indépendance technologique et une gestion flexible du stockage distribué ».

Les chiffres clés de ce projet illustrent l’ampleur du record : 1,025 TiB/s en lecture séquentielle 4 Mo avec une réplique, 270 GiB/s en écriture, 25,5 millions d’IOPS en lecture 4K aléatoire, et 4,9 millions en écriture 4K aléatoire, selon la configuration à 3× répliques ou avec codage 6+2.

Enfin, ce record pose de nouvelles questions clés pour l’avenir de Ceph : comment continuer à optimiser son efficacité, notamment en écriture, et repenser la gestion de la latence et des threads pour dépasser le seuil actuel de performance. Les perspectives s’orientent vers des réseaux 200 GbE et au-delà, afin de soutenir ces vitesses vertigineuses.

le dernier