Historisch Record voor Gedistribueerde Opslag: Ceph Cluster Bereikt 1 TiB/s
Een team van ingenieurs heeft een opmerkelijke mijlpaal bereikt in de wereld van gedistribueerde opslag: een Ceph-cluster dat in staat is om 1 TiB/s sequentiële leessnelheid te ondersteunen, wat alle eerdere records overtreft. Deze prestatie is het resultaat van een extreme implementatie die gebruik maakt van geavanceerde hardware, een hoge prestaties netwerk en maanden van fijnafstellingen om onverwachte technische obstakels te overwinnen.
Een Architectuur Die Elke Byte Per Seconde Hoofdzakelijk Bereikt
Het project begon in 2023, toen een toonaangevend bedrijf besloot hun Ceph-cluster, dat gebruik maakte van harde schijven, te migreren naar een 100% NVMe infrastructuur met een capaciteit van 10 PB. Het uiteindelijke ontwerp, ontwikkeld in samenwerking met Clyso, stelde 68 Dell PowerEdge R6615-nodes voor, uitgerust met AMD EPYC 9454P processors (48 cores / 96 threads), 192 GiB DDR5 RAM, twee Mellanox ConnectX-6 100 GbE interfaces per node en 10 NVMe Enterprise-schijven van 15,36 TB elk.
Het cluster, verdeeld over 17 racks, werd uitgerold met Ceph Quincy v17.2.7 en Ubuntu 20.04.6, en bereikte in totaal 630 OSD’s in productie. Het al bestaande netwerk, ontworpen voor operaties met hoge prestaties, was cruciaal voor het maximaliseren van de architectuur.
“Het doel was niet alleen om een record te vestigen, maar om dit te doen in een realistische omgeving, met productiehardware en de stabiliteit van het systeem te waarborgen,” leggen de ingenieurs van het project uit.
Drie Kritieke Problemen en Hun Oplossingen
De weg naar een terabyte per seconde was niet eenvoudig. Tijdens de eerste tests lag de prestatie ver onder verwachting en verschenen er onregelmatige patronen in de resultaten. Na weken van analyse werden drie belangrijke knelpunten vastgesteld:
Energiebesparingsstatussen (c-states)
Ceph is zeer gevoelig voor de latentie die door c-states in de CPU wordt geïntroduceerd. Het uitschakelen van deze in de BIOS leidde tot een onmiddellijke verbetering van 10-20%.Verdringing bij IOMMU
De kernel spendeerde een enorme hoeveelheid tijd aannative_queued_spin_lock_slowpath
bij het beheren van DMA-maps voor NVMe. De oplossing was om IOMMU op kernelniveau uit te schakelen, wat de lees- en schrijfsnelheid in meer-nodige tests bevrijdde.Suboptimale Compilatie van RocksDB
De Debian/Ubuntu-pakketten compileerden RocksDB niet met de juiste optimalisatievlaggen. Door Ceph opnieuw te bouwen met de juiste flags, werd de compactie tot 3x versneld en de prestatie in willekeurige 4K-schrijfsnelheid verdubbelde.
Resultaten: Schalen tot doorbreken van de Grens
Met de opgelost problemen en de geoptimaliseerde configuratie (het optimale aantal PG’s, threads en shards per OSD), bereikte het cluster:
- 1,025 TiB/s bij sequentiële lezing van 4 MB met 3 replicaties.
- 270 GiB/s bij sequentiële schrijfsnelheid met 3 replicaties.
- 25,5 miljoen IOPS bij willekeurige 4K-lezen.
- Bij erasure coding 6+2, meer dan 500 GiB/s bij lezen en 387 GiB/s bij schrijven.
De sleutel was het proportioneel schalen van clients en OSD’s, het optimaliseren van asynchrone messaging-threads en het voorkomen dat PG’s in een laggy
status kwamen, wat tijdelijk de I/O verlamde.
“Ceph is in staat om twee 100 GbE-interfaces per node te satureren. Om verder te gaan, ligt de toekomst in netwerken van 200 GbE of sneller,” concludeert het technische team.
De Toekomst van Ceph in Hoge Prestaties
Deze implementatie laat zien dat Ceph kan concurreren met extreme opslagoplossingen, terwijl het zijn open source-natuur behoudt. De lessen uit deze casus—zoals de gevoeligheid voor kernelconfiguratie, het belang van geoptimaliseerde compilatie en het afstemmen van PG’s—zijn waardevol voor elk grootschalig project.
De volgende uitdaging zal zijn om de efficiëntie bij massale schrijfbewerkingen te verbeteren en de problemen van laggy PG's
definitief te elimineren. Bovendien wijzen de ontwikkelaars erop dat om de IOPS-barrière (~400–600 K per node) te doorbreken, heroverweging van delen van het OSD-threadmodel nodig zal zijn.
De Visie van Stackscale
David Carrero, medeoprichter van Stackscale (Grupo Aire), herinnert eraan dat, hoewel weinig bedrijven zo extreme cijfers als deze recordimplementatie vereisen, de technologie achter Ceph perfect toepasbaar is op realistische zakelijke projecten.
“Bij Stackscale bieden we onze klanten de mogelijkheid om Ceph-omgevingen op dedici-erde infrastructuur uit te rollen, hetzij als onderdeel van projecten gebaseerd op Proxmox of in aangepaste architecturen. We praten misschien niet over het bereiken van 1 TiB/s, maar wel over het ontwerpen van oplossingen die zijn afgestemd op elk geval, met hoge beschikbaarheid, schaalbaarheid en de prestatie die hun bedrijf nodig heeft. Ceph is een cruciaal onderdeel voor wie technologische onafhankelijkheid en flexibiliteit in gedistribueerde opslag zoekt,” voegt Carrero toe.
Deze visie benadrukt dat het potentieel van Ceph niet beperkt is tot technische records, maar dat het een veelzijdig hulpmiddel is voor bedrijven die hun gegevens willen beheren en kosten willen optimaliseren in private of hybride omgevingen.
Belangrijke Cijfers van het Project
Tabel van Resultaten
Meting | 3× Replicatie | EC 6+2 |
---|---|---|
Sequentiële lezing 4 MB | 1,025 TiB/s | 547 GiB/s |
Sequentiële schrijfsnelheid 4 MB | 270 GiB/s | 387 GiB/s |
Willekeurige lezing 4K | 25,5 M IOPS | 3,4 M IOPS |
Willekeurig schrijven 4K | 4,9 M IOPS | 936 K IOPS |
Veelgestelde Vragen (FAQ)
1. Wat is Ceph en waarom is dit record relevant?
Ceph is een open source gedistribueerd opslagsysteem dat blokken, objecten en bestanden biedt. Dit record toont zijn vermogen om extreme prestatiecijfers te halen zonder afhankelijk te zijn van proprietaire hardware.
2. Welke rol speelden de AMD EPYC-processoren?
De AMD EPYC 9454P zorgden voor een groot aantal cores, hoge geheugenbandbreedte van DDR5 en energie-efficiëntie, cruciaal voor het ondersteunen van honderden OSD’s per node.
3. Waarom is het optimaliseren van PG’s (Placement Groups) belangrijk?
Een optimaal aantal PG’s per OSD verbetert de gegevensdistributie en vermindert interne verstoringen, waardoor de prestatie in zeer snelle clusters toeneemt.
4. Kan ik Ceph gebruiken met Proxmox in een zakelijke omgeving?
Ja. Leveranciers zoals Stackscale bieden geoptimaliseerde infrastructuur om Ceph samen met Proxmox uit te rollen, waarbij het ontwerp wordt afgestemd op de specifieke behoeften van prestaties, beschikbaarheid en capaciteit van elke klant.
Referenties: ceph.io en Micron