Hoe presteert Ceph-cachetiering?
Inleiding:
In deze post delen we een benchmarktest om te demonstreren hoe Ceph-cachetiering de prestaties van een HDD-pool kan verbeteren door een cache-laag in te stellen die wordt ondersteund door een NVMe-pool.
Wat is Ceph Cache Tier en hoe functioneert het
De Ceph cache-laag maakt het mogelijk om snellere opslagapparaten te gebruiken als cache voor langzamere apparaten. Dit houdt in dat er een pool van snelle/dure opslagapparaten (zoals NVMe SSD's) wordt gemaakt die geconfigureerd zijn als een cache-laag, en een langzamere/goedkopere achterliggende pool van ofwel erasure-coded of langzamere apparaten (zoals HDD's) die geconfigureerd zijn als een voordelige opslaglaag. De cache-laag slaat vaak benaderde gegevens op van de onderste laag en verwerkt lees- en schrijfverzoeken van clients. De cache-tiering-agent spoelt periodiek of verwijdert objecten uit de cache-tier op basis van bepaalde beleidsregels.
Ceph Cache Tier Demonstratie
In het verleden, wanneer de SATA SSD werd gebruikt als opslagapparaat voor de cache-laag, was de prestatieverbetering van het gebruik van de cache-laag verwaarloosbaar. Tegenwoordig is de prijs van NVMe SSD aanzienlijk gedaald in vergelijking met enkele jaren geleden, en de prestaties van NVMe SSD zijn veel sneller dan HDD. We willen weten of het gebruik van NVMe SSD als cache-laag aanzienlijk kan helpen bij een HDD-pool.
Om de doeltreffendheid van de NVMe-cache-laag te testen, hebben we een test opgezet om te zien of de cache-laag de prestaties van een op HDD gebaseerde opslagpool verbeterde.
Clusterconfiguratie
NVME-hosts | 3 x Ambedded Mars500 Ceph Appliances |
Specificatie van elke Mars 500-apparaat | |
CPU | 1x Ampere Altra Arm 64-Core 3.0 Ghz |
Geheugen | 96 GiB DDR4 |
Netwerk | 2 poorten 25Gbps Mellanox ConnectX-6 |
OSD Stations | 8 x Micron 7400 960GB |
HDD Gastheren | 3 x Ambedded Mars400 Ceph Appliances |
Specificatie van elk Mars 400 apparaat | |
CPU | 8 knooppunten Quad-Cores Arm64 1.2 GHz |
Geheugen | 4GiB per knooppunt. 32 GiB per apparaat |
Netwerk | 2 x 2.5Gbps per knooppunt. 2x 10 Gb uplink via in-chassis schakelaar. |
OSD Stations | 8 x 6 TB Seagate Exos HDD |
Ceph-clusterinformatie
- 24 x OSD op NVMe SSD (3x Ambedded Mars500-apparaten)
- 24x OSD op HDD (3x Ambedded Mars400-apparaten)
- HDD- en NVMe-servers bevinden zich in afzonderlijke CRUSH-roots.
Testclients
- 2 x fysieke servers. 2x 25 Gb-netwerkkaart
- Elke server draait 7x VM's.
- Elke VM heeft 4x core en 8 GB geheugen
Stel de Cache Tier in met behulp van de Ambedded UVS-manager
1. Maak een basispool door gebruik te maken van de HDD osd.
2. Maak een NVMe-pool met behulp van de NVMe SSD osd.
3. Voeg de NVMe-pool toe als de cache-tier van de HDD-pool.
de standaard cache-tier configuraties:
- Cache modus: terug schrijven
- hit_set_count = 12
- hit_set_periode = 14400 sec (4 uur)
- doel_max_byte = 2 TiB
- doel_max_objecten = 1 miljoen
- min_lees_recentheid_voor_promotie & min_schrijf_recentheid_voor_promotie = 2
- cache_doel_vuil_ratio = 0.4
- cache_doel_hoge_vuil_ratio = 0.6
- cache_doel_vol_ratio = 0.8
- cache_min_spoel_leeftijd = 600 sec.
- cache_min_evict_age = 1800 sec.
We hebben de HDD-pool getest vóór en na het toevoegen van de cache-laag, waarbij we tot 14 clients hebben gebruikt om testbelastingen te genereren. Elke klant heeft een RBD gemonteerd voor de fio-test. De testbelasting begon met één client en het aantal clients werd verhoogd nadat elke testtaak was voltooid. Elke testcyclus duurde vijf minuten en werd automatisch aangestuurd door Jenkins. De prestatie van een testtaak was de som van alle resultaten van de klanten. Voordat we de cache-tiering testten, schreven we gegevens naar de RBD's totdat de cache-tier-pool gevuld was boven de ceph-cache-doelvolledigheidsratio (0.8).
De diagrammen toonden aan dat de prestaties van de pure HDD-pool aanzienlijk werden verbeterd na het toevoegen van een NVMe-cache-pool.
Tijdens de cache tier test, observeerden we pool statistieken met behulp van het ceph osd pool stats commando. De cache en basis pools hadden activiteiten van flushing, evicting en promoting. We legden pool statistieken vast op verschillende momenten tijdens de cache tier test.
Gegevens zijn naar de cache geschreven
Cache-id 84
Client io 21 MiB/s wr, 0 op/s rd, 5.49k op/s wr
Mars400_rbd-id 86
Er gebeurt niets
Cache was aan het promoten en verwijderen
Cachepool-id 84
Client I/O 42 MiB/s schrijven, 0 op/s lezen, 10,79k op/s schrijven
Cache-tier I/O 179 MiB/s verwijderen, 17 op/s promoten
Mars400_rbd-pool-id 86
Client I/O 0 B/s lezen, 1,4 MiB/s schrijven, 18 op/s lezen, 358 op/s schrijven
Cache werd geleegd
Cache-pool-id 84
Client I/O 3,2 GiB/s lezen, 830 op/s lezen, 0 op/s schrijven
Cache-tier I/O 238 MiB/s flushen, 14 op/s promoten, 1 PG's aan het legen
Mars400_rbd-pool-id 86
Client I/O 126 MiB/s lezen, 232 MiB/s schrijven, 44 op/s lezen, 57 op/s schrijven
PG was aan het uitzetten
pool cache id 84
client io 2.6 GiB/s lezen, 0 B/s schrijven, 663 op/s lezen, 0 op/s schrijven
cache tier io 340 MiB/s doorspoelen, 2.7 MiB/s uitzetten, 21 op/s bevorderen, 1 PGs aan het uitzetten (vol)
pool mars400_rbd id 86
client io 768 MiB/s lezen, 344 MiB/s schrijven, 212 op/s lezen, 86 op/s schrijven
PG Flushen en directe client IO naar basismap.(klanten waren data aan het schrijven)
pool cache id 84
client io 0 B/s wr, 0 op/s rd, 1 op/s wr
cache laag io 515 MiB/s spoelen, 7.7 MiB/s verwijderen, 1 PGs spoelen
pool mars400_rbd id 86
client io 613 MiB/s wr, 0 op/s rd, 153 op/s wr
Na de continue test, lieten we het cluster enkele uren rusten en deden we de 4 kB willekeurige schrijftest opnieuw. We kregen een veel betere prestatie. Dit kwam omdat de cache ruimte was vrijgemaakt voor het nieuwe schrijven.
Uit deze test zijn we er zeker van dat het gebruik van de NVMe pool als de cache tier van een HDD pool een aanzienlijke prestatieverbetering kan opleveren.
Het moet worden opgemerkt dat de prestaties van cache tiering niet gegarandeerd kunnen worden. De prestaties hangen af van de cache hit conditie op dat moment, en dezelfde prestaties kunnen niet worden bereikt door tests met dezelfde configuratie en workloads te herhalen.
Als uw applicatie consistente prestaties nodig heeft, gebruik dan een pure NMMe SSD pool.
- Gerelateerde Producten
Mars500 NVME Alle Flash Ceph Opslagapparaat
Mars 500
Mars 500 Ceph Apparaat is ontworpen om te voldoen aan de behoeften van high-performance cloud-native dataopslag. Het maakt gebruik van de nieuwste NVMe...
DetailsMars 400PRO Ceph opslagapparaat
Mars 400PRO
Mars 400 Ceph Appliance is ontworpen om te voldoen aan de hoge capaciteitseisen voor cloud-native gegevensopslag. Het maakt gebruik van HDD om te profiteren...
Details
Hoe presteert Ceph-cachetiering? | UVS Manager - Vereenvoudiging van Ceph-implementatie | Ambedded
Gevestigd in Taiwan sinds 2013, Ambedded Technology Co., LTD. is een leverancier van block- en objectopslagoplossingen. Hun belangrijkste gegevensopslagbeheer omvat Ceph-opslagtechnologie, integratie van ARM-servers, softwaregedefinieerde opslag, optimalisatie van bedrijfsopslag, kostenbesparingen voor Ceph-apparaten, opslagbeheersoftware en block- en objectopslagoplossingen. Ze bieden professionele Ceph-ondersteuning, schaalbare opslagsystemen met een hoge opslagefficiëntie in het datacenter.
Ambedded biedt geavanceerde Ceph-opslagoplossingen op ARM-microservers, op maat gemaakt voor B2B-kopers die hun bedrijfsopslagsystemen willen optimaliseren. Onze kant-en-klare Ceph-apparaten verminderen de totale eigendomskosten (TCO) en vereenvoudigen het beheer van opslag, waarbij ze blok-, bestandssysteem- en objectopslag ondersteunen in een geïntegreerd platform. Met een toewijding aan innovatie en klantenondersteuning is Ambedded uw vertrouwde partner voor schaalbare en efficiënte SUSE Enterprise Storage Appliance-oplossingen. Ervaar naadloze integratie en professionele ondersteuning om het volledige potentieel van Ceph-technologie in uw bedrijf te benutten.
'Ambedded' biedt klanten sinds 2013 schaalbare opslagsystemen en kosteneffectief beheer van Ceph-opslag. Met geavanceerde technologie en 20 jaar ervaring zorgt 'Ambedded' ervoor dat aan de behoeften van elke klant wordt voldaan.