Stor IT Back - Ihr Speicherspezialist
RAID Level und Hot Spare V1.22 (c) Stor IT Back 2024
Festplatten waren
in den Anfangszeiten der Datenverarbeitung sehr teuer. Es gab eine Zweiklassengesellschaft
für Festplatten. Die kostengünstigen waren für PCs und einfache Server vorgesehen,
sie hatten jedoch einen großen Nachteil: sie fielen häufiger aus. Dies war gerade
für den Großrechnerbereich und wichtige Server nicht tolerierbar, es wurden
für diesen Einsatz speziell gefertigte und kontrollierte Festplatten verwendet.
Diese waren sehr teuer und wurden nur von einzelnen Herstellern verwendet.
Als Lösung wurde die Idee RAID geboren. Das Kürzel stand in den
Anfangszeiten für Redundant Array of Inexpensive Disks, später wurde aus dem Inexpensive (kostengünstig oder "billig") dann Independent. Es wurden mehrere kostengünstige
Platten kombiniert und zu einer logischen Festplatte verschaltet. Zwei Festplatten
waren immer noch kostengünstiger als eine Großrechnerplatte und die Wahrscheinlichkeit,
dass beide Festplatten ausfielen war nicht sonderlich groß.
Dieses Verfahren löste die beiden wichtigsten Nachteile der Festplatten: den Preis und die Ausfallwahrscheinlichkeit.
Sollte jetzt eine Festplatten oder SSD aus dem RAID ausfallen, so springt die Hot Spare Platte ein. Sie ersetzt die ausgefallene Festplatte oder SSD und wird
aus den Parity-Informationen des RAID aufgebaut. Eine Hot Spare ohne RAID macht also keinen Sinn.
Mit RAID (Redundant Array of Independent Disks) werden mehrere unabhängige
Festplatten zusammen geschaltet, um ein großes logisches Laufwerk zu bilden.
Auf diesem Array werden nicht nur Daten gespeichert, es werden auch "Redundanz-Informationen"
hinzugefügt. Diese Redundanz-Informationen können die Daten selbst sein (Spiegeln)
oder Parity-Daten, die aus mehreren Datenblöcken berechnet werden (RAID 3, 4,
5 oder 6). Neben dem RAID-Level 0 bis 6 wurden auch Kombinationen entwickelt,
die so genannten "nested raids". Die sind zum Beispiel
die RAID-Level 10 oder 51. Ein häufig verwendetes Beispiel ist ein RAID
50, es werden zwei RAID 5 gebildet, die dann miteinander gestriped werden. Dies
erhöht die Performance ohne die Sicherheit zu beeinflussen.
Eine Weiterentwicklung ist das RAIDn, ein "virtuelles
RAID", welches durch die Festlegung der maximalen Verfügbarkeit definiert
werden kann.
Eine weitere Variante stammt von IBM, die eine Hot Spare Festplatte (sie springt
beim Ausfall einer anderen Festplatte im RAID-Verbund ein) direkt mit ins RAID
integrieren. Daraus ergibt sich der RAID-Level 5E bzw. 5EE. Beim 5E wird der
Hot-Spare-Platz an das Ende einer jeden Festplatte gelegt, bei 5EE verteilt
er sich auf alle Festplatten über den gesamten Bereich.
Das Betriebssystem (z.B. Windows 2016, Mac OS, Linux oder Unix) greift nun nicht mehr
auf die einzelnen physikalischen Festplatten, sondern stattdessen auf das virtuelle
Array zu.
Das eigentliche Ziel von RAID ist es, die Verfügbarkeit aller Daten zu erhöhen.
RAID verhindert Ausfallzeiten bei einem Festplattenausfall. Aber auch die Performance
wird gesteigert. Im Vergleich zu einer Einzelplatte kann bei einem RAID 5 auf
10 Festplatten von allen 10 Festplatten zur gleichen Zeit gelesen werden. Ein
deutlicher Performance-Vorteil, da die einzelne Festplatte
der Flaschenhals in der Datenübertragung ist. Beispiele für RAID-Systeme
finden Sie in unseren
Angeboten Storage- und RAID-Systeme.
Allerdings kann ein RAID-Controller keine Daten restaurieren, die von den Benutzern
gelöscht oder durch ein Ereignis wie Diebstahl oder Feuer zerstört wurden. Deshalb
benötigt man immer ein Backup, um das System vor diesen Ereignissen
zu schützen, auch dann wenn ein RAID System installiert ist.
Für ein RAID in der Praxis benötigen wir nicht nur Festplatten und/oder SSDs, sondern auch einen RAID-Controller und bekommen damit ein Hardware-RAID.
Egal ob als PCI Express Steckkarte in einem
Server, oder als externen RAID-Controller in einem Storage. Nehmen wir einmal an, wir legen ein einfaches RAID 5 mit einem PCI Express RAID Controller von Hersteller A an und
nutzen es einige Zeit. Jetzt fällt der Controller des Herstellers A aus. Es ist ja ein Standard-RAID 5, können wir einfach einen RAID-Controller von Hersteller B nehmen? Für das
Betriebssystem ist ein Treiber verfügbar, das ist kein Problem.
Ein einfaches Nein, in den meisten Fällen ist es nicht möglich, weil jeder Hersteller ein RAID unterschiedlich anlegt. Es unterscheiden sich die Meta-Daten des Controllers
und wie diese kodiert werden. Also welche Platten sind in Verwendung, wo startet das RAID, wo liegt ein Logical Volume oder eine LUN. Das ist natürlich nicht
standardisiert und jeder Hersteller macht es anders.
Es ist meist noch komplexer: Nicht einmal die unterschiedlichen Typen der Controller eines Herstellers müssen untereinander kompatibel sein, sogar innerhalb von Controller-Familien
und innerhalb von Firmware-Ständen können Unterschiede auftreten.
Also sollte man immer bei einem Ausfall auf exakt den gleichen Typ mit der gleichen Firmware tauschen. Das bedeutet natürlich auch, dass die Firmware-Version
unabhängig vom System hinterlegt werden sollte.
Ist denn bei einem Software-RAID alles besser? Na ja, da kann der Controller nicht kaputt gehen. Aber auch da muss man auf die Kompatibilität achten. Sollte man zum Beispiel
das Betriebssystem wechseln, dann könnte das Software-RAID durchaus anders aufgebaut sein und es wird nicht gefunden. Also auch wenn Treiber und Filesystem passen sollten.
Was ist beim RAID mit SSDs zu beachten? Verhalten sich SSDs genauso wie drehende Festplatten? SSDs besitzen eine sehr geringe Latenzzeit,
wird ein RAID Controller dazwischen geschaltet, dann erhöht sich die Latenzzeit zwangsläufig. Dies wirkt sich bei einem RAID 1 besonders aus. Die Latenzzeit der virtuellen Platten erhöht sich
meist deutlich im Vergleich zu einer einzelnen SSD. Ist also ein RAID 1 bei SSDs nicht sinnvoll? Na ja, der zusätzliche Schutz wird erreicht, also soweit sinnvoll beziehungsweise wichtig.
Ein RAID 1 wird meist bei Betriebssystemen eingesetzt, also die Boot Platten. Da fällt die höhere Latenzzeit nicht so sehr ins Gewicht. Vom Durchsatz wird also ein RAID 1 etwas schlechter als
eine einzelne SSD, aber die Sicherheit steigt deutlich.
Bei einem RAID 5 erreicht man aber die normalen Steigerungen durch die Vielzahl von SSDs in einem RAID. Das gilt aber nur für den Durchsatz, die Latenzzeit kann je nach Konfiguration auch
höher liegen. Bei einem RAID 5 aus 5 SSDs wird man also keinen 4fachen Durchsatz erreichen, sondern in der Praxis bei dem 2 oder 3fachen liegen. Das hängt aber sehr vom verwendeten Controller ab.
Oder sollte man lieber ein RAID 6 nutzen, oder gar Tripe Parity? Der Vorteil von RAID 6 ist die höhere Verfügbarkeit, es dürfen 2 Platten ausfallen, ohne dass die Daten verloren gehen. Der
Nachteil ist aber die komplexere Berechnung der Parities beim RAID 6. Also die höhere Latenzzeit beim Schreiben, was sich bei den SSDs noch deutlicher bemerkbar macht. Es kommt also
mal wieder auf den Einsatzzweck an. Aber eines ist wichtig: Auch bei SSDs sollte man nicht auf das RAID verzichten.
Was machen die großen Hersteller in der Praxis, also wie sehen die Storage-Systeme aus? Zum Beispiel nutzt Dell EMC für die Unity die Standard-RAIDs 5, 6 und 10.
Bei XtremIO kommt XDP (XtremIO Data Protection), ein modifiziertes RAID 6 zum Einsatz. Andere Hersteller, wie Fujitsu und IBM setzen mehr auf RAID 5. NetApp nutzt auf den
FAS Systemen RAID DP (RAID 6) und RAID TEC (Triple Erasure Coding). TEC ist eine Funktion von ONTAP 9, die eine dritte Parity Disk für Sicherheit und Geschwindigkeit
beim Rebuild nutzt. Nimble (2016 aufgekauft von HPE) verwendet Triple-Parity RAID in den Systemen.
Es macht also jeder Hersteller anders, aber auf RAID verzichtet keiner.
Eine Hot Spare ist eine leere Festplatte in einem RAID-System, die als Hot Spare konfiguriert wurde. Sollte jetzt eine Festplatte aus einem RAID-Verbund ausfallen, so kann die
Hot Spare einspringen. Es werden dann die Daten der ausgefallenen Festplatten auf die Hot Spare
rekonstruiert. Eine Hot Spare kann also nur für eine Festplatte oder SSD aus einem RAID einspringen, wenn die Daten noch rekonstruiert werden können.
Ist bei einem RAID 5 aber schon eine Festplatte ausgefallen, so kann für eine weitere Platte die Hot Spare nicht einspringen. Aber warum ist die Hot Spare nicht
schon beim ersten Ausfall eingesprungen? Im ersten Moment total unlogisch, aber wenn man genauer drüber nachdenkt, so könnte es ja sein,
das die erste Hot Spare noch nicht vollständig eingesprungen ist und es fällt eine zweite Platten aus dem gleichen RAID aus. Jetzt können die Daten nicht mehr
rekonstruiert werden (bei RAID 5 darf ja nur eine Platte oder SSD ausfallen). In diesem Beispiel ist es aber viel schlimmer: Die Daten sind jetzt nicht
mehr verfügbar, in diesem Fall also der vollständige Datenverlust. Da helfen also auch nicht 2 oder mehr Hot Spare Platten.
Was hilft aber in diesem Fall? Wann tritt dieser Fall auf? Je größer eine Festplatte ist, desto länger dauert es, bis eine Hot Spare komplett eingesprungen ist.
Bei großen NL-SAS Platten und RAID Systemen unter großer Last kann es schon mal viele Stunden dauern, bis eine Hot Spare komplett eingesprungen ist. In dieser
Zeit darf dann bei RAID 5 keine weitere Platte ausfallen. Eine einfache Lösung ist da das RAID 6, dort dürfen zwei Festplatten ausfallen. Also eine deutlich
geringere Wahrscheinlichkeit von Datenverlust. Also je größer die Platten im RAID, desto besser ist ein RAID 6 oder RAID 7.
Kann jede Festplatte als Hot Spare genutzt werden? Für jeden Typ und jede Größe muss eine individuelle Hot Spare vorhanden sein, genauer gesagt, die Hot Spare muss
gleich oder größer als die Nutzplatte sein. Die meisten Hersteller schreiben aber exakt die gleiche Festplatte als Hot Spare vor. Ist das RAID Storage also
mit SSD, SAS und NL-SAS Platten bestückt, so müssen auch für jeden Typ die passenden Hot Spare Platten bzw. SSDs vorhanden sein.
Warum nicht einfach die größte Festplatte als universelle Hot Spare? Nehmen wir einmal an, eine SSD fällt aus. Jetzt akzeptiert der RAID Controller die große NL-SAS als
Ersatz für die SSD (was nicht immer der Fall ist). Damit ist die Performance für das SSD RAID am Boden. Während des Rebuild ist die NL-SAS ja sowieso schon
unter Hochlast, kann also die eigentlichen Nutzdaten kaum noch verarbeiten. Aber auch hinterher ist die NL-SAS Platte immer die Bremse in dem RAID, weil sich
alles nach der langsamsten Platte richten muss. Also keine gute Idee, auch wenn einige Controller das akzeptieren würden.
Was sind jetzt aber Global Spare, Dedicated Spare und Enclosure Spare? Eine Global Spare springt für alle passende Festplatten bzw. SSDs ein, die in einem Storage
System vorhanden sind. Eine Dedicated Spare kann nur für ein bestimmtes RAID-Set einspringen und die Enclosure Spare für ein bestimmtes Gehäuse innerhalb eines Storage
Systems. Aber warum diese Unterscheidungen? Wenn in einem Storage System zum Beispiel unterschiedliche RAID Sets für Produktion und Test vorhanden sind, dann sollen
die Hot Spares nur für die Produktion einspringen, nicht aber für das Testsystem. Oder es gibt zwei Hot Spares, eine als Global und eine als Dedicated für die Produktion.
Prinzipiell gibt es zwei Möglichkeiten ein RAID physikalisch aufzubauen.
Die einfachste Methode ist es, komplette Festplatten zu verwenden und daraus
ein RAID aufzubauen. Nimmt man jetzt zum Beispiel 8 Festplatten mit jeweils
1 TB Kapazität und generiert ein RAID 5, so erhält man ca. 7 TB Nutzkapazität.
Wenn man jetzt aber für einen Server wesentlich weniger braucht, so kann
man die 7 TB in Partitionen aufteilen und diese den verschiedenen Rechnern zuordnen.
So würde es ein RAID-System in einem SAN machen. Möchte man aber neben
einer Partition in RAID 5 auch eine Partition in RAID 10, so geht dies mit diesem
Verfahren nicht.
Die zweite Möglichkeit der Aufteilung geht anders vor: Jetzt wird aus jeder
der 8 Festplatten ein Teil herausgeschnitten und diese 8 Teile werden mit RAID
5 verknüpft. Daraus erhält der Controller eine virtuelle Platte in
RAID 5. Jetzt ist aber auf den physikalischen Platten noch Speicherplatz vorhanden.
Als nächstes werden wieder Teile aus den 8 Festplatten herausgeschnitten
und zu einem RAID 10 zusammengefasst. Mit den nächsten Teilen könnte
man ein RAID 6 bauen oder wieder ein RAID 5.
Nicht jeder Hersteller kann beide Methoden verarbeiten, die meisten Hersteller
verwenden nur eine der beiden Verfahren. Je nach dem was Sie benötigen,
wir wählen das passende System für Sie aus.
RAIN ist die Abkürzung für Redundant Array of Independent Nodes, Reliable Array of Independent Nodes oder Random Array of Independent Nodes.
Die Begriffe sind nicht fest definiert, können also von Hersteller zu Hersteller abweichen oder anderes bedeuten.
Genutzt wird ein Cluster an Nodes oder Knoten, der redundante hochverfügbare Dienste anbietet. Man nutzt den Begriff RAIN, um die Fehlertoleranz (Fault Tolerance) zu definieren.
Es ist also ähnlich zu RAID, allerdings auf Nodes bezogen und nicht für Festplatten.
Aber was bedeutet dies für die Praxis? Nehmen wir einen Knoten, der mit einer Festplatte bestückt ist. Liegen die Daten nur auf dem einen Knoten und fällt die Platte aus,
so sind die Daten verloren. Jetzt nehmen wir einen zweiten Knoten auch wieder mit einer Festplatte und replizieren die Daten zwischen den Knoten bzw. den Festplatten.
Fällt jetzt ein Knoten aus, dann sind die Daten noch auf dem zweiten Knoten verfügbar. Damit hätten wir ein RAIN 1.
Dieses Verfahren wird zum Beispiel beim vSAN von VMware eingesetzt.
Dieses komplexe Thema kann nicht in voller Breite beschrieben werden. Für weitere Informationen zu diesem Bereich nutzen Sie unser Kontaktformular. Wir beantworten Ihnen gerne unverbindlich spezielle und individuelle Fragen zur Gestaltung von Raid-Leveln.