Wie funktioniert das Ceph-Cache-Tiering? | ARM-Microserver-Ceph-Speicherlösungen | Ambedded

Wie funktioniert das Ceph-Cache-Tiering? | Benutzerfreundliche Ceph-Verwaltungsoberfläche

Wie funktioniert das Ceph-Cache-Tiering?

Wie funktioniert das Ceph-Cache-Tiering?

Einführung:
In diesem Beitrag teilen wir einen Benchmark-Test, um zu zeigen, wie Ceph-Cache-Tiering die Leistung eines HDD-Pools verbessern kann, indem eine Cache-Ebene eingerichtet wird, die von einem NVMe-Pool unterstützt wird.


14 Apr, 2023 Ambedded
Was ist Ceph Cache Tier und wie funktioniert es

Der Ceph-Cache-Tier ermöglicht die Verwendung schnellerer Speichergeräte als Cache für langsamere. Dies beinhaltet die Erstellung eines Pools von schnellen/teuren Speichergeräten (wie NVMe SSDs), die als Cache-Ebene konfiguriert sind, und eines langsameren/günstigeren Backing-Pools aus entweder erasure-codierten oder langsameren Geräten (wie HDDs), die als wirtschaftliche Speicherebene fungieren. Die Cache-Ebene speichert häufig abgerufene Daten aus der Hintergrundebene und bedient Lese- und Schreibanfragen von Clients. Der Cache-Tiering-Agent leert oder entfernt regelmäßig Objekte aus dem Cache-Tier basierend auf bestimmten Richtlinien.

Ceph Cache Tier-Demo

In der Vergangenheit war die Leistungssteigerung bei der Verwendung von SATA SSD als Cache-Tier-Speichergerät unbedeutend. Heutzutage ist der Preis für NVMe SSD im Vergleich zu vor einigen Jahren stark gesunken und die Leistung von NVMe SSD ist wesentlich schneller als HDD. Wir möchten wissen, ob die Verwendung von NVMe SSD als Cache-Tier einer HDD-Pool erheblich helfen kann.

Um die Wirksamkeit der NVMe-Cache-Ebene zu testen, haben wir einen Test eingerichtet, um zu sehen, ob die Cache-Ebene die Leistung eines HDD-basierten Speicherpools verbessert.

Einrichtung des Clusters
NVME Gastgeber3 x Ambedded Mars500 Ceph Appliances
Spezifikationen für jedes Mars 500 Gerät
CPU1x Ampere Altra Arm 64-Core 3.0 Ghz
Speicher96 GiB DDR4
Netzwerk2 Ports 25Gbps Mellanox ConnectX-6
OSD-Laufwerke8 x Micron 7400 960GB


HDD-Hosts3 x Ambedded Mars400 Ceph Appliances
Spezifikationen für jedes Mars 400 Gerät
CPU8 Knoten Quad-Cores Arm64 1,2 GHz
Speicher4GiB pro Knoten. 32 GiB pro Gerät
Netzwerk2 x 2,5Gbps pro Knoten. 2x 10 Gb Uplink über den eingebauten Switch.
OSD-Laufwerke8 x 6 TB Seagate Exos HDD
Ceph-Cluster-Information
  • 24 x OSD auf NVMe-SSD (3x Ambedded Mars500-Geräte)
  • 24x OSD auf HDD (3x Ambedded Mars400-Geräte)
  • HDD- und NVMe-Server befinden sich in separaten CRUSH-Roots.
Testclients
  • 2 x physische Server. 2x 25Gb-Netzwerkkarte
  • Jeder Server führt 7x VMs aus.
  • Jede VM hat 4x Kerne und 8 GB Speicher
Richten Sie die Cache-Ebene durch Ambedded UVS-Manager ein

 1. Erstellen Sie einen Basisspeicherpool unter Verwendung des HDD OSD.

 2. Erstellen Sie einen NVMe-Pool mit dem NVMe SSD OSD.

 3. Fügen Sie den NVMe-Pool als Cache-Tier des HDD-Pools hinzu.
die Standard-Cache-Tier-Konfigurationen:

  • Cache-Modus: Writeback
  • hit_set_count = 12
  • hit_set_period = 14400 Sekunden (4 Stunden)
  • target_max_byte = 2 TiB
  • target_max_objects = 1 Million
  • min_read_recency_for_promote & min_write_recency_for_promote = 2
  • cache_target_dirty_ratio = 0,4
  • cache_target_dirty_high_ratio = 0,6
  • cache_target_full_ratio = 0,8
  • cache_min_flush_age = 600 Sekunden.
  • cache_min_evict_age = 1800 sec.

Wir haben den HDD-Pool vor und nach dem Hinzufügen der Cache-Ebene getestet, indem wir bis zu 14 Clients verwendet haben, um Testlasten zu erzeugen. Jeder Kunde hat ein RBD für den fio-Test eingebunden. Die Testbelastung begann mit einem Client und erhöhte die Anzahl der Clients nach Abschluss jeder Testaufgabe. Jeder Testzyklus dauerte fünf Minuten und wurde automatisch von Jenkins gesteuert. Die Leistung eines Testjobs war die Summe aller Ergebnisse der Kunden. Vor dem Testen der Cache-Tiering haben wir Daten auf die RBDs geschrieben, bis der Cache-Tier-Pool über das Ceph-Cache-Zielvollverhältnis (0,8) gefüllt war.

Die Diagramme zeigten, dass die Leistung des reinen HDD-Pools nach dem Hinzufügen eines NVMe-Cache-Pools erheblich gesteigert wurde.

Während des Cache-Ebenen-Tests beobachteten wir die Pool-Statistiken mit dem Befehl 'ceph osd pool stats'. Die Cache- und Basis-Pools hatten Spül-, Ausstoß- und Förderaktivitäten. Wir haben die Pool-Statistiken zu verschiedenen Zeiten während des Cache-Ebenen-Tests erfasst.

Daten wurden in den Cache geschrieben
Pool-Cache-ID 84
Client-E/A 21 MiB/s Schreiben, 0 Op/s Lesen, 5,49k Op/s Schreiben

Pool mars400_rbd ID 86
es passiert nichts

Cache wurde optimiert und geleert
Cache-Pool-ID 84
 Client-IO 42 MiB/s schreiben, 0 Op/s lesen, 10,79k Op/s schreiben
 Cache-Tier-IO 179 MiB/s leeren, 17 Op/s optimieren

Mars400_rbd-Pool-ID 86
 Client-IO 0 B/s lesen, 1,4 MiB/s schreiben, 18 Op/s lesen, 358 Op/s schreiben

Der Cache wurde geleert
Pool-Cache-ID 84
Client-E/A 3,2 GiB/s lesen, 830 Vorgänge/s lesen, 0 Vorgänge/s schreiben
Cache-Tier-E/A 238 MiB/s Leeren, 14 Vorgänge/s Befördern, 1 PGs werden geleert

Pool mars400_rbd ID 86
Client-E/A 126 MiB/s lesen, 232 MiB/s schreiben, 44 Vorgänge/s lesen, 57 Vorgänge/s schreiben

PG wurde verdrängt
Pool Cache ID 84
 Client IO 2,6 GiB/s lesen, 0 B/s schreiben, 663 Operationen/s lesen, 0 Operationen/s schreiben
 Cache-Tier-IO 340 MiB/s flushen, 2,7 MiB/s verdrängen, 21 Operationen/s fördern, 1 PGs verdrängen (voll)

Pool mars400_rbd ID 86
 Client IO 768 MiB/s lesen, 344 MiB/s schreiben, 212 Operationen/s lesen, 86 Operationen/s schreiben

PG-Spülung und direkte Client-E/A zum Basisspeicherpool.(Kunden haben Daten geschrieben)
Pool-Cache-ID 84
 Client-IO 0 B/s schreiben, 0 op/s lesen, 1 op/s schreiben
 Cache-Tier-IO 515 MiB/s Flush, 7,7 MiB/s Auslagern, 1 PGs Flushin

Pool mars400_rbd ID 86
 Client-IO 613 MiB/s schreiben, 0 op/s lesen, 153 op/s schreiben

Nach dem kontinuierlichen Test ließen wir den Cluster für einige Stunden ruhen und führten den 4 kB Zufallsschreibtest erneut durch. Wir erzielten eine deutlich bessere Leistung. Dies lag daran, dass der Cache-Speicher für das neue Schreiben freigegeben wurde.
 
Aus diesem Test können wir sicher sagen, dass die Verwendung des NVMe-Pools als Cache-Ebene eines HDD-Pools zu einer erheblichen Leistungssteigerung führen kann.
 
Es sollte beachtet werden, dass die Leistung der Cache-Ebene nicht garantiert werden kann. Die Leistung hängt von der Cache-Trefferquote zu diesem Zeitpunkt ab, und die gleiche Leistung kann nicht durch wiederholte Tests mit der gleichen Konfiguration und Arbeitslast erreicht werden.
 
Wenn Ihre Anwendung eine gleichbleibende Leistung benötigt, verwenden Sie einen reinen NMMe SSD-Pool.

Verwandte Produkte
Mars500 NVME All Flash Ceph Speichergerät - Flash Ceph Speichergerät mit 8 NVME OSD für Hochleistungsanwendungen
Mars500 NVME All Flash Ceph Speichergerät
Mars 500

Das Mars 500 Ceph Gerät ist darauf ausgelegt, den hohen Anforderungen an die Speicherung von Cloud-nativen Daten gerecht zu werden. Es nutzt die neueste...

Einzelheiten
Mars 400PRO Ceph-Speichergerät - Ceph-Speichergerät Mars 400 vorne.
Mars 400PRO Ceph-Speichergerät
Mars 400PRO

Mars 400 Ceph Appliance wurde entwickelt, um den hohen Kapazitätsbedarf für cloudbasierten Datenspeicher zu erfüllen. Es nutzt HDD, um von den niedrigen...

Einzelheiten

Ceph-Speichergerät

Mars 400 Ceph-Speichergerät HW & SW-Datenblatt.

Wie funktioniert das Ceph-Cache-Tiering? | UVS Manager - Vereinfachung der Ceph-Bereitstellung | Ambedded

Seit 2013 in Taiwan ansässig, ist Ambedded Technology Co., LTD. ein Anbieter von Block- und Objektspeicherlösungen. Zu ihren wichtigsten Datenverwaltungslösungen gehören Ceph-Speichertechnologie, Integration von ARM-Servern, softwaredefinierte Speicherlösungen, Optimierung von Unternehmensspeicher, Kosteneinsparungen bei Ceph-Appliances, Speicherverwaltungssoftware sowie Block- und Objektspeicherlösungen. Sie bieten professionellen Ceph-Support und skalierbare Speichersysteme mit hoher Speichereffizienz im Rechenzentrum.

Ambedded bietet hochmoderne Ceph-Speicherlösungen auf ARM-Mikroservern an, maßgeschneidert für B2B-Käufer, die ihre Unternehmensspeichersysteme optimieren möchten. Unsere schlüsselfertigen Ceph-Appliances reduzieren die Gesamtbetriebskosten (TCO) und vereinfachen das Speichermanagement. Sie unterstützen Block-, Dateisystem- und Objektspeicherung auf einer einheitlichen Plattform. Mit einem Engagement für Innovation und Kundensupport ist Ambedded Ihr vertrauenswürdiger Partner für skalierbare und effiziente SUSE Enterprise Storage Appliance-Lösungen. Erleben Sie eine nahtlose Integration und professionelle Unterstützung, um das volle Potenzial der Ceph-Technologie in Ihrem Unternehmen zu nutzen.

Ambedded bietet Kunden seit 2013 skalierbare Speichersysteme und kostengünstiges Ceph-Speichermanagement. Mit fortschrittlicher Technologie und 20 Jahren Erfahrung stellt Ambedded sicher, dass die Bedürfnisse jedes Kunden erfüllt werden.