iX 5/2020
S. 72
Review
Storage

HPEs Primera im Test

Miss 100 Prozent

Hubert Sieverding

HPE garantiert 100 Prozent Verfügbarkeitfür seine Enterprise-Storage-Systeme der neuen Primera-Serie. Bei solch vollmundigen Versprechen führt kein Weg am iX-Labor vorbei.

Die letzten 100 Prozent Verfügbarkeit, die durch die Presse gingen, hatten nicht lange Bestand. Wenn es nach HPE geht, stünden zumindest die auf einem Primera Storage abgelegten Nachrichten zu 100 Prozent zur Verfügung (siehe Kasten „Das 100-Prozent-Versprechen“). Die Modelle der neuen Storage-Array-Familie Primera starten in der Königsklasse des Tier-0-Speichers für Fibre-­Channel-SANs. Dort positioniert HPE sie gegen traditionellen High-End-Speicher und schraubt den Maßstab für Ausfall­sicherheit und Leistung gleich ein wenig höher. Deshalb hat sich iX das handliche System Primera 630 ins Labor geholt und die große Primera 670 remote getestet. Aber auch ohne HPEs kernige Werbeaussagen haben die Systeme einige pfiffige Techniken parat.

Steht die Zuverlässigkeit im Fokus, zieht der Tester als Erstes den Stecker, im Fall der von HPE gelieferten Primera 630 sogar beide. Verdutzt stellt er fest, dass dies dem System nichts auszumachen scheint. Das Zauberwort heißt Redundanz und gilt bei der Primera für alle Ressourcen und Komponenten bis auf die Backplane. Diese enthält allerdings keine aktiven Bauteile, die Wahrscheinlichkeit eines Ausfalls ist extrem gering.

Um die Ressourcen redundant auszulegen, hat HPE zu zwei Tricks gegriffen. Der erste Trick wiegt schwer in der Hand, wenn man eines der beiden 800-Watt-Netzteile der 630 herauszieht. Statt der von Servern gewohnten drei Pfund sind es beim HPE satte 10 bis 12 kg. Ohne es zerlegen zu müssen, weiß der Tester, dass der Hersteller Akkus integriert hat. Dies ist ideal für KMU. Um einen Datenverlust zu vermeiden, ist nicht unbedingt eine Notstromversorgung notwendig. Das System hat binnen der überbrückten Minute reichlich Zeit, alle Cache-Inhalte auf SSDs oder Festplatten zu schreiben.

Der zweite Trick, nämlich die Ressource Speicher möglichst optimal redundant zu halten, geht tiefer, als einzelne Laufwerke zu einem RAID-Set zusammenzufassen. Jedes Laufwerk ist in 1 GByte große Blöcke, Chunklets genannt, aufgeteilt. Aus 6 + 2 oder 10 + 2 Chunklets wird ein eigenes RAID-6-Set mit zwei Paritäts-­Chunklets, genannt Logical Disk (LD). Beim Ausfall eines Laufwerks ist die ­Wiederherstellung bei Weitem nicht so kräfte­zehrend wie bei der klassischen Ausführung eines RAID-6-Sets mit ganzen Festplatten. Angenehmer Nebeneffekt: Der Steckplatz eines Laufwerks spielt keine Rolle. Im Test wurden die SSDs aus unterschiedlichen Slots durchgetauscht, ohne dass es Auswirkungen auf die Verfügbarkeit oder Performance hatte.

Mustergültiger Föderalismus

Die Vorderseite der 2U hohen Primera 630 fasst drei Gruppen à acht senkrechte Hot-Swap-­Einschübe für 2,5"-Drives. Die rechte Gruppe ist bereits für NVMe-Laufwerke ausgelegt, obwohl HPE noch keine NVMe-Medien für die Primera anbietet.

Mit maximal fünf Erweiterungseinheiten vom Typ Primera 600 2U24 Drive Enclosure kann man die Zahl der SSDs auf 144 erhöhen. Wer es langsamer und günstiger angehen möchte, kann neun dieser JBODs anschließen und insgesamt 240 HDDs einbinden. Da kommt eine Menge Speicher zusammen, die die zwei Con­trollerknoten verwalten müssen. Diese zieren die Mitte der Rückseite der Primera 630, jeweils links und rechts begleitet von den Netzteil-Akku-Kombinationen, von denen bereits die Rede war. Einen Controllerknoten kann man im laufenden Betrieb ohne Beeinträchtigung herausziehen. Dabei trennt man einen Niedervolt-Stromversorgungsstecker und fünf vielpolige Signalverbinder von der Backplane. Nach dem Anheben des Metall­deckels der Controllereinheit erkennt man eine CPU vom Typ Intel Skylake mit 10 Kernen samt acht DDR4-RDIMM-Riegeln mit insgesamt 128 GByte. Das Betriebssystem haust auf einem NVMe-Boot-Laufwerk mit M.2-Anschluss.

Hilfe bekommt die CPU durch HPE-­eigene Primera-ASICs. Sie überneh­men – on the fly – die RAID-Paritätsberechnung, erkennen Blöcke mit Nullen, berechnen die Prüfsumme eines Datenstroms und vergleichen zwei Datenblöcke auf Identität. Die Primera-ASICs sind dort auf der Controllerplatine stationiert, wo Daten seriell ausgetauscht werden, also zwischen den Host-Ports und der CPU sowie auf dem Kommunikationspfad zum Nachbarknoten.

Die ASICs kontrollieren und organisieren den Datenfluss und bilden damit gewissermaßen die Zollstationen jedes Controllers – ohne die CPU zusätzlich zu belasten. Die größeren Primera-Modelle 650 und 670 verfügen über vier Controllerknoten und setzen daher zwei zusätzliche ASICs ein, zumal alle vier Knoten direkt miteinander vernetzt sind. Zudem meistern deren Controller die Mehrbelastung durch eine doppelte CPU-Ausstattung und mehr RAM – bis zu einem TByte. Dafür steuern sie aber auch jeder bis zu 12 FC-Ports und vier oder acht externe SAS-Ports für bis zu 38 JBODs insgesamt (siehe Tabelle „Modelle der Primera-Familie“).

Modelle der Primera-Familie
Modelle Primera 630 Primera 650 Primera 670 600 2U24 Drive Enclosure
Einbauhöhe in Rack-Einheiten 2 4 4 2
Netzteile 2 × 800 Watt 2 oder 4 × 1700 Watt 2 oder 4 × 1700 Watt 2 × 500 Watt
Anzahl Controllerknoten 2 2 oder 4 2 oder 4 2 (SAS-Expander)
CPUs pro Controllerknoten 1 2 2
Cache 128 GByte 256 GByte 512 GByte oder 1 TByte
Service-Ports 2 2 oder 4 2 oder 4 2
FC-Hosts-Ports pro Knoten 4 oder 8 4, 8 oder 12 4, 8 oder 12
10 GE-Ports pro Knoten für die Replikation 2 2 2
12-GBit/s-SAS-Ports pro Knoten für Erweiterungen 2 4 (+ optional 4) 4 (+ optional 4) 2 + 1
Laufwerksschächte 24 48 48 24
davon NMVe-fähig 8 16 16
max. zusätzliche Drive Enclosures bei SSD-Ausbau 5 14 22
max. zusätzliche Drive Enclosures bei HDD-Ausbau 8 22 38

In den Erweiterungseinheiten befinden sich SAS-Expander. Hier gilt: Je mehr Leitungen zwischen Controller und Enclosures geschaltet sind, desto höher die Performance – die beiden größeren Primera-Modelle können bis zu 32-SAS-Ports bedienen. Beim maximalen Speicherausbau mit 38 JBODs ist eine Daisy Chain von Drive Enclosure zu Drive Enclosure und damit Durchsatzreduzierung unumgänglich.

Die Controllerknoten sind dual-ported über die zentrale Backplane mit in den Einschüben montierten SAS-, SATA- oder NVMe-Laufwerken verbunden. Auf jedem Controllerknoten läuft ein eigenes Primera OS, eine übergeordnete Steuerung gibt es nicht. Beide Knoten teilen sich ihre Arbeit, solange sie gesund sind. Kränkelt einer oder fällt aus, schränkt dies nicht die Zuverlässigkeit, höchstens die Performance ein wenig ein, denn der verbleibende Knoten eines Controllers übernimmt die Arbeit seines Zwillings.

Auf getrennten Wegen zum Ziel

Die Primera-Systeme möchten über mindestens zwei redundante Datenleitungen angesprochen werden. Dazu verfügt ein Controllerboard des Modells 630 über zwei Quad-Port-FC-Adapterkarten (Fibre Channel), wahlweise für 16 oder 32 GBit/s. Üblicherweise bindet man sie über einen FC-Switch ins vorhandene SAN ein. Unsere Testmaschine wurde Punkt zu Punkt mit dem Server gekoppelt.

Unterhalb der acht FC-Buchsen eines jeden Knotens befinden sich auf der linken Rückseite zwei RJ45-Buchsen. Eine davon dient der Administration übers Wartungs-Ethernet. Hinter der zweiten versteckt sich ein serieller Service-Port. Über ein mitgeliefertes Kabel lässt sich ein Laptop anschließen, um den Ursprungszustand wiederherzustellen.

In der Mitte einer Controllerrückseite befinden sich zwei 12 GBit/s schnelle SAS-Steckbuchsen für die JBODs oder JBOFs zur Laufwerksaufstockung. Zwei 10GE-SFP+-Anschlüsse dienen der Datenreplikation (siehe Abbildung 1).

Die Rückseite der Primera 630 zieren zwischen zwei Netzteil-Akku-Modulen die beiden baugleichen Controllerknoten, jeweils mit acht FC-Ports. Die beiden 10GE-Ports dienen ausschließlich der Replikation. Über die SAS-Buchsen in der Mitte finden zusätzliche JBOFs und JBODs Anschluss. Der linke RJ45-Anschluss dient zur Administration per Ethernet, daneben sitzt ein serieller Wartungsport (Abb. 1).

Auf eine Leseanforderung reagiert der angesprochene Controllerknoten selbst. Für das Abfragen der Verwaltungsdatenbank und das Befüllen einer der 64 Hardware-Queues braucht es ein bis zwei Millisekunden mehr als ein serverinterner JBOD-Betrieb. Ist die Queue erst einmal gefüllt, bremst nur noch der Fibre Channel den Transport.

Beim Schreiben spiegelt der Controllerknoten, der die Anforderung empfängt, die Daten in den Cache des anderen Knotens. HPE weist die Hälfte des Hauptspeichers, also 128 GByte bei der 630, als Cache aus. Bei Ausfall eines Knotens gehen somit keine Daten verloren. Diese Arbeit übernimmt das dafür zuständige ASIC mit 8 GBit/s. Diese Redundanzabsicherung begrenzt zusammen mit dem Durchsatz der FC-Leitungen die Schreibperformance. Das Zurückschreiben auf die Laufwerke selbst geschieht im Hintergrund. Dadurch ist eine SSD-spezifische Sättigung des Gesamtsystems nur bei hoher Belastung durch mehrere Hosts zu erwarten. Die größeren Maschinen verfügen über zusätzliche ASICs zum Spiegeln und mehr Cache, sodass ihnen auch beim Befeuern über ein 32 GBit-FC-SAN nicht sofort die Puste ausgeht.

Scheinriesen

Daten durchlaufen auf ihrem Weg von oder zum Laufwerk mehrere Abstraktionsstufen, von denen die erwähnten 1 GByte großen Chunklets nur eine bilden. Das System stellt sicher, dass alle verwendeten Chunklets eines RAID-6-Sets zu unterschiedlichen physischen Laufwerken gehören. Jede Logical Disk hat einen Owner und einen Backup-Owner. Zudem existieren zwei Arten von LDs, solche für Nutzer- und solche für Administrationsdaten. Schließlich braucht es – wie im richtigen Leben – auch Platz für Bürokratie.

Aus den LDs setzen sich die nach Bedarf konfektionierten Virtual Volumes (VV) zusammen und bilden die nächste Abstraktionsebene. Die VVs sind aber für einen Host erst sichtbar, wenn das System sie als LUNs (Logical Unit Number) gemäß SCSI-Protokoll exportiert. LUNs können wahlweise für alle Server sichtbar oder mandantenspezifisch an einen bestimmten Port eines Hosts gebunden sein.

Legt der Admin dabei beispielsweise ein 8 TByte großes Volume an, allozieren die Controller nach dem Prinzip des Thin Provisioning erst einmal nur 256 MByte. Dazu verwendet das System Common Provisioning Groups (CPG), also einen Pool aus Logical Disks (LD). Aus ihm ordnet es bei Bedarf, also bei wachsendem Füllstand des Volume, dynamisch zusätzlichen Speicher in Schritten von 32 oder 128 MiByte zu. Dazu erweitert das Betriebssystem vorhandene LDs oder erstellt zusätzliche (siehe Abbildung 2).

Durch das Zerlegen des Plattenplatzes in 1 GByte kleine Chunklets emanzipiert sich das System von der Größe der Laufwerke und eventuell vorhandener Fehlstellen. Virtuelle Volumes erhalten über die Common Provisioning Group immer nur so viel Speicher zugewiesen, wie sie benötigen (Abb. 2).

Grundsätzlich verwaltet Primera OS die Laufwerke in einer Blockgröße von 16 KByte. Fallen mehrere kleinere Datensätze an, fügt es sie durch geschickte Paketierung zusammen. Freigegebene Blöcke mit 128 MByte zusammenhängendem Speicherplatz fließen in die CPG zur Verwendung durch andere Volumens zurück. Der Nachteil des Thin Provisioning besteht darin, dass mehr Speicher reserviert werden kann, als wirklich vorhanden ist. Deshalb überwacht das System permanent die CGPs und mahnt frühzeitig Nachschub beim Administrator an, sobald der tatsächliche Füllungsgrad aller Virtual Volumes die vorhandene Kapazität zu sprengen droht.

Kommentieren