Ratgeber Storage

RAID in der Praxis richtig konfigurieren

22.08.2007 von Dr. Andreas Köpf
Die RAID-Technik schaltet mehrere Festplattenlaufwerke logisch zusammen, sodass sie als eine einzige Massenspeichereinheit gelten. Dieses Verfahren erhöht einerseits die Datensicherheit, hat aber auch Einfluss auf die Performance. Wir haben die typischen RAID-Konfigurationsbeispiele verschiedener Systeme für Sie zusammengestellt.

Mit Redundant Array of Independent Disks (RAID) werden mehrere unabhängige Festplatten zusammen geschaltet, um einen großes logisches Laufwerk zu bilden. Nicht nur Daten werden auf diesem Array gespeichert, sondern auch „Redundanz-Informationen“ hinzugefügt. Diese Redundanz-Informationen können die Daten selbst sein (Spiegeln) oder Parity-Daten, die aus mehreren Datenblöcken bei RAID 3, 4, oder 5 berechnet werden.

Das Betriebssystem wie Windows oder Unix greift nun nicht mehr auf die einzelnen Festplatten, sondern stattdessen auf das Array zu. Die Verfügbarkeit zu erhöhen ist das eigentliche Ziel von RAID. RAID verhindert Ausfallzeiten im Falle eines Festplattenausfalls. Allerdings kann es 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.

Prinzipiell lässt sich die RAID-Technologie auf SCSI- und SAS- beziehungsweise SATA-Systeme gleichermaßen anwenden. Allerdings ist zu berücksichtigen, dass es sich bei SCSI und SAS/SATA um zwei völlig unterschiedliche „Storage-Architekturen“ handelt.

Wenn Sie sich für die Grundlagen der RAID-Technologie interessieren, werden Sie in folgenden Artikeln fündig: RAID im Überblick. Ausführliche Informationen zur Geschichte der Festplatte liefert Ihnen der Beitrag 50 Jahre Festplatte: Vom lahmen Riesen zum flotten Winzling. Über die neusten Festplatten-Technlogien informieren Sie die Artikel Hybrid-Festplatte im Test: Schneller durch Flash und Praxistest: Flash SSD statt Festplatte.

Schnelle Windows- oder Unix/Linux-Workstation

Diese Betriebssysteme arbeiten sehr intensiv mit Swap-Dateien. Bei hoher Auslastung, wie viele User-I/Os auf der Festplatte, muss sehr oft ein Zugriff auf diese Swap-Datei durchgeführt werden, was die Leistungsfähigkeit und Antwortzeiten der Festplatte beeinträchtigen kann.

Mit dem Einsatz eines Cache-Controllers kann der Datendurchsatz auf der Festplatte in solchen Fällen deutlich verbessert werden. Normalerweise werden 64 bis 256 MByte RAM installiert. Zu überlegen wäre auch der Einsatz von zwei unabhängigen Festplatten, eine als Boot-Laufwerk mit der Swap-Datei und eine für die Nutzdaten. Dies entkoppelt vollständig die Zugriffe auf die Swap-Datei von den Zugriffen auf die Nutzdaten und erhöht dadurch den Datendurchsatz nochmals deutlich.

Schnelle Basis: Ein Boot-Laufwerk und eine getrennte Festplatte für Daten in Verbindung mit einem Cache-Controller ergeben ein System mit flotten Storage-Zugriffen. (Quelle: ICP)

Da dieses System über keinerlei Redundanz verfügt, müssen die Festplatten nicht in Hot-Plug-Einschübe montiert werden. Um den SCSI-Bus zu terminieren, müssen die Terminatoren auf dem Controller und der letzten Festplatte aktiviert werden. Falls ein älteres CD/DVD-ROM am Controller angeschlossen ist, sollte es nicht zur Terminierung verwendet werden, das heißt, nicht am Ende des SCSI-Kabels platziert sein. Da Standard-CD/DVD-Laufwerke relativ langsame SCSI-Geräte sind, verfügen sie nur über passive SCSI-Terminatoren und dürfen deshalb nicht zur Terminierung von Ultra-SCSI-Systemen verwendet werden.

Schnelle Workstation mit großen Dateien

Bei Video- oder DTP-Workstations, wo große Dateien auf einer Festplatte gespeichert werden, ist Geschwindigkeit wichtiger als Sicherheit. Das Schreiben großer Dateien bedeutet sequenzieller Datentransfer, der durch eine Striping-Konfiguration beschleunigt werden kann (RAID 0).

Flotte Arbeitsstation: Mit RAID 0 und separatem Boot-Laufwerk sind die Daten schnell verfügbar – allerdings auf Kosten der Sicherheit. (Quelle: ICP)

Eine sehr leistungsfähige Lösung wäre es, diese großen Dateien auf ein RAID-0-System mit entsprechender Storage zu speichern (zwei Festplatten zu einem Striping-Verband zusammengefasst) und zusätzlich eine kleine leistungsfähige Festplatte als Boot-Laufwerk und für die Swap- und Programmdateien zur Verfügung stellen. Das entkoppelt wiederum die Systemzugriffe von den Datenzugriffen. Da RAID 0 nicht fehlertolerant ist und keine Form von Hot Plug unterstützt, können die Festplatten einfach in die Workstation fest eingebaut werden.

Kleiner Server mit Sicherheitsanforderungen

Ein Serversystem benötigt Sicherheit. Für kleinere Systeme ist eine gespiegelte Lösung (RAID 1) am besten geeignet. Immer dann, wenn die benötigte Speichermenge durch eine einzelne Festplatte realisiert werden kann, sollte man ein RAID-1-System in Betracht ziehen.

Ein 1-Kanal-Controller stellt eine sehr kostengünstige Lösung dar, wobei die gespiegelten Festplatten an denselben SCSI-Kanal angeschlossen werden.

Spiegelsystem: Mit einem RAID 1 (Mirror) lässt sich bereits eine gewisse Datensicherheit des Storage-Systems realisieren. (Quelle: ICP)

Ein 2-Kanal-Spiegel-Controller bietet noch mehr Datendurchsatz und Redundanz, da sich die gespiegelten Festplatten an unterschiedliche SCSI-Kanäle anschließen lassen. Die beiden Festplatten können dann gleichzeitig vom Controller angesprochen werden, was den Datendurchsatz erhöht.

Sollte ein kompletter SCSI-Kanal ausfallen, zum Beispiel durch Kabelprobleme, Ausfall eines Terminators, oder weil der Kanal durch ein defektes SCSI-Gerät blockiert wird, ist der andere SCSI-Kanal immer noch nutzbar und arbeitet weiter. Alle Daten sind also weiterhin verfügbar. Der große Vorteil des Hardware-Mirroring im Vergleich zu Softwarelösungen ist, dass Hardware-Mirroring jedes Byte von der ersten auf die zweite Festplatte kopiert und damit 100 Prozent Redundanz bietet.

Hardware-Mirroring unterstützt auch Hot-Spare-Festplatten (Ersatzlaufwerke, die im Falle eines Plattenausfalls benutzt werden), Hot Plug und sogar Auto-Hot-Plug, um eine ausgefallene Festplatte während des Betriebes zu tauschen, ohne das Betriebssystem herunterfahren zu müssen. Letztlich erzeugt Hardware-Mirroring auch keine zusätzliche Last auf dem System, nicht einmal dann, wenn ein Datenabgleich auf den beiden Festplatten läuft.

Doppelt hält besser: Ein RAID-1-System, aufgeteilt auf zwei Kanäle, bietet noch mehr Datensicherheit als ein Controller mit einem Kanal. (Quelle: ICP)

Die Festplatten werden üblicherweise in Wechselschubladen innerhalb des Servers eingebaut, um einen Hot Plug zu ermöglichen. Um den Tausch einer defekten Festplatte möglichst einfach zu machen, werden separate interne, aktive Terminatoren verwendet. Bandlaufwerke oder optische Laufwerke können auch an den Controller angeschlossen werden. Alternativ kann man auch einen separaten, kostengünstigen SCSI-Adapter einsetzen. Der Anschluss dieser langsameren SCSI-Geräte an einen separaten SCSI-Adapter entlastet die SCSI-Kanäle des RAID-Controllers von dem langsamen Datentransfer dieser Geräte.

Kleiner Windows- oder Linux/Unix-Server

Betriebssysteme wie Windows oder Unix arbeiten sehr intensiv mit der Swap-Datei, um den Arbeitsspeicher durch virtuelles RAM zu erweitern. Unter hoher Last wird sehr viel RAM benötigt, was bedeutet, dass die Swap-Datei sehr intensiv genutzt wird.

Diese Storage-Zugriffe können die Arbeitszugriffe der Benutzer verlangsamen, wenn alle Daten auf demselben Laufwerk abgelegt sind und das unabhängig davon, ob es eine einzelne Festplatte oder ein RAID-System ist. In dieser Situation werden die Schreib-/Leseköpfe der Festplatten permanent zwischen der Swap-Datei und den Nutzdaten hin- und herbewegt.

Schnell und sicher: Ein RAID-1-System in Verbindung mit einem Zwei-Kanal-RAID-Controller ermöglicht eine schnelle Datenverfügbarkeit und eine hohe Datensicherheit. (Quelle: ICP)

Während dieser Kopfbewegungen finden keine Datentransfers statt. Dieses Problem lässt sich umgehen, indem die Swap-Datei und die Nutzdaten separat gespeichert werden. Ein Array mit zwei Laufwerken wird als gespiegeltes Boot/Swap-Laufwerk konfiguriert und ein anderes für die Nutzdaten verwendet.

Vier Laufwerke sind im System installiert, aber das Betriebssystem erkennt diese als zwei logische Laufwerke. Ein 1-Kanal-RAID-Controller erlaubt einen kostengünstigen Einstieg, ein 2-Kanal-RAID-Controller ermöglicht einen höheren Datendurchsatz und verfügt über redundante SCSI-Kanäle.

Mehr Kapazität hinzufügen

Wenn im Nachhinein die Kapazität zu klein wird, können einfach zwei neue Festplatten hinzugefügt, das heißt, an den Controller angeschlossen und ein neuer Spiegelverband eingerichtet werden. Das Betriebssystem wird diesen einfach als ein weiteres Laufwerk erkennen.

Erweitern nach Maß: Durch den Anschluss zweier weiterer Festplatten lässt sich die Kapazität des Storage-Systems sehr einfach erweitern. (Quelle: ICP)

Da bereits sechs Festplatten in dieser Konfiguration installiert sind, sollte man sich Gedanken über ein Hot-Spare-Laufwerk machen. Ein Hot-Spare-Laufwerk ist ein vorinstalliertes Reservelaufwerk, das bei einem Plattenausfall sofort als Ersatz zur Verfügung steht. Der RAID-Controller startet die Reparatur des nicht mehr redundanten Arrays sofort, sodass das System nur für eine sehr kurze Zeit in einem nicht redundanten Zustand verbleibt.

RAID-Konfiguration für mittelgroßen Fileserver

Wenn ein Server mit hoher Storage-Kapazität eingerichtet werden soll, ist es sinnvoll, eine RAID-5-Konfiguration einzusetzen. Der Einsatz von drei Festplatten stellt eine Nutzkapazität von zwei Platten zur Verfügung. Der übrige Speicherplatz (Parity-Daten) dient zur Wiederherstellung der Daten bei einem Festplattenausfall.

NetWare zum Beispiel benötigt normalerweise kein separates Boot-Laufwerk, da alle Systemdateien typischerweise während des Bootvorgangs geladen werden und keine Notwendigkeit besteht, diese während des normalen Betriebes oft neu zu laden.

RAID 5: Wer eine hohe Storage-Kapazität benötigt und dennoch auf Datensicherheit nicht verzichten will, für den bietet RAID 5 die ideale Lösung. (Quelle: ICP)

Die drei Festplatten passen normalerweise in ein mittelgroßes Servergehäuse zusammen mit einem Bandlaufwerk und einem CD/DVD-ROM. Da RAID 5 den Tausch einer ausgefallenen Festplatte während des Betriebs unterstützt, sollte ein Wechselrahmensystem mit einem separaten, aktiven SCSI-Terminator für die Festplatten verwendet werden. Das Bandlaufwerk und das CD/DVD-ROM können entweder an den RAID-Controller beziehungsweise für besseren Datendurchsatz an einen separaten, günstigen SCSI-Adapter angeschlossen werden.

Mehr Kapazität zu einem mittelgroßen Fileserver hinzufügen

Mehr Nutzkapazität kann zu einem Fileserver auch während des Betriebs hinzugefügt werden, indem eine „Online Expansion“ des RAID-Systems durchgeführt wird. Um dies zu erreichen, muss die Mechanik samt Elektronik (entsprechende Storage-Backplane) bereits im Server vorhanden sein.

Online-Erweiterung: Bei einem Fileserver ist es wichtig, dass Festplatten auch im laufenden Betrieb (Online-Expansion) ins RAID-System eingebunden werden können. (Quelle: ICP)

Die „Online Expansion“ eines RAID-Systems bindet die neue Festplatte in das existierende Disk Array ein, reorganisiert die Daten sowie die Parity-Informationen und macht die zusätzliche Speicherkapazität für das Betriebssystem und damit für die Benutzer verfügbar. Man sollte es mit der „Online Expansion“ aber nicht übertreiben und etwa zu viele Festplatten zu einem großen Array zusammenzuschalten. Wenn man stattdessen zusätzliche RAID-Arrays konfiguriert, erhält man üblicherweise einen besseren Datendurchsatz – auch am selben Controller. Mit zirka fünf Laufwerken in einem Array erhält man typischerweise den besten Datendurchsatz.

Geschwindigkeit und Redundanz dem Server hinzufügen

Die Standard-RAID-5-Konfiguration kann weiter ausgebaut werden, indem ein 3-Kanal-Controller verwendet wird und jede der drei Festplatten des RAID-5-Systems an einen separaten SCSI-Kanal angeschlossen wird.

Flotter Server: Sind Geschwindigkeit und Sicherheit bei einem RAID-5-System wichtig, sollte bei drei Festplatten jedes Laufwerk an einen separaten Controller-Kanal angeschlossen sein. (Quelle: ICP)

Dadurch kann der Controller alle Festplatten gleichzeitig ansprechen, was das System nochmals schneller macht. Ein zusätzlicher Vorteil ist, dass SCSI-Kanäle nun ebenfalls redundant sind, sodass selbst dann, wenn ein kompletter SCSI-Kanal ausfällt (Kabel-, Stecker- oder Terminierungsproblem), nur eine Festplatte des redundanten RAID-5-Arrays verloren geht.

Mittelgroßer Windows- oder Linux/Unix-Applikationsserver

Da diese Betriebssysteme sehr intensiv mit Swap-Dateien arbeiten, ist es anzuraten, Zugriffe auf das Boot-Laufwerk und die Swap-Datei von den normalen Zugriffen zu trennen. Eine gute Lösung ist es, zwei Festplatten für das gespiegelte Boot-Laufwerk und drei Festplatten in einer RAID-5-Konfiguration für die Nutzdaten zu verwenden.

Storage-System für mittelgroßen Server: Eine Kombination aus gespiegelten Boot-Laufwerken (RAID 1) und Datenfestplatten im RAID-5-Verbund bilden die ideale Storage-Basis für mittelgroße Server. (Quelle: ICP)
Foto: Bernhard Haluschak

Mehr Sicherheit und besserer Datendurchsatz lassen sich erreichen, indem man die Festplatten an einen 3-Kanal-Controller anschließt. In dieser Konfiguration sind die Festplatten jedes Arrays an unabhängige SCSI-Kanäle angeschlossen. Im Falle eines Kabeldefekts kann es passieren, dass zwei Festplatten verloren gehen; da sie aber zu verschiedenen RAID-Arrays gehören, bleibt jedes Array verfügbar. Um noch mehr Sicherheit zu erhalten, kann eine zusätzliche Festplatte als Hot-Spare-Laufwerk hinzugefügt werden, die dann als Ersatzlaufwerk verfügbar ist und sofort ein ausgefallenes Laufwerk ersetzt. Der RAID-Controller startet die Reparatur des nicht mehr redundanten Arrays augenblicklich, sodass das System nur für eine sehr kurze Zeit in einem nicht redundanten Zustand verbleibt.

Sicherheit maximieren: Eine Aufteilung der Festplatten auf mehrere Controller-Kanäle erhöht die Datensicherheit und ermöglicht schnelleren Datentransfer von und zu dem Storage-System. (Quelle: ICP)

Wenn die Ersatzfestplatte als ein Pool-Hot-Spare-Laufwerk definiert ist, kann sie sowohl ein ausgefallenes Laufwerk im RAID-5-Array als auch eine der beiden gespiegelten Boot-Festplatten ersetzen. In einer solchen Konfiguration ist ein 3-Kanal-RAID-Controller die optimale Wahl. Da nur sechs Festplatten benutzt werden, ist es möglich, sie direkt im Servergehäuse unterzubringen. Stellt dies ein Problem dar, kann ein externes Gehäuse verwendet werden.

In diesem Fall können die Festplatten trotzdem über die SCSI-Kanäle verteilt werden um die bestmögliche Redundanz und Geschwindigkeit zu erhalten. In beiden Konfigurationen ist es ratsam separate, aktive Terminatoren für den SCSI-Bus zu verwenden.

Mehr Kapazität zu einer 3-Kanal-Konfiguration hinzufügen

Wenn bei einer 3-Kanal-Konfiguration mehr Kapazität benötigt wird, kann man einfach drei weitere Festplatten hinzufügen und diese zu einem neuen RAID-5-System zusammenschalten.

Kapazität erweitern: Durch Hinzufügen eines weiteren RAID-5-Verbundes lässt sich die Storage-Kapazität sehr einfach erweitern. Darüber hinaus reduziert ein Hot-Spare-Laufwerk das Sicherheitsrisiko eines Datenverlusts bei einem Ausfall einer Festplatte. (Quelle: ICP)

Das Betriebssystem wird drei logische Laufwerke sehen, das Boot-Laufwerk (RAID 1), das Datenlaufwerk (RAID 5) und ein weiteres Datenlaufwerk (RAID 5).

Wenn nicht mehr genügend Platz im Server ist, muss ein zusätzliches externes Gehäuse verwendet werden. Wenn es notwendig wird, können das Boot-Laufwerk und das Hot-Spare-Laufwerk im Inneren des Servers verbleiben. In dieser Konfiguration ist der Controller nicht länger am Ende des SCSI-Busses und muss deshalb nicht mehr terminiert werden.

Große Datenbankserver

Bei einem Datenbankserver bekommt die Methode, verschiedene Zugriffe auf mechanisch unabhängige Arrays zu verteilen, eine noch größere Bedeutung. Neben den Zugriffen auf die Swap-Datei durch das Betriebssystem gibt es zusätzliche Zugriffe, die parallel stattfinden – Schreib-/ Leseoperationen auf Index und Daten. Jeder Zugriff auf die Datenbank muss sowohl auf die Index- als auch die Datendatei zugreifen.

Wenn in einem stark belasteten Datenbankserver beide Dateien auf demselben Array sind, müssen die Festplatten viele zeitaufwendige Bewegungen der Schreib-/Leseköpfe durchführen. Deshalb empfehlen Datenbankhersteller „Load Balancing“, wenn Daten auf Festplatten abgelegt werden. Das bedeutet, dass unabhängige Festplatten für die verschiedenen Datenbankdateien eingesetzt werden. Ein Disk Array führt dann automatisch eine gleichmäßige Verteilung der Last durch, es kann aber noch mehr Datendurchsatz erreicht werden, wenn man unabhängige Arrays für diese unabhängigen Zugriffe installiert.

Datenbank-Storage-System: Für einen Datenbankserver bilden je ein RAID-1-Verbund für Boot- und Index-Laufwerk sowie ein RAID-5-Verbund für Datenfestplatten die Basis für ein optimales Storage-System. (Quelle: ICP)

Die zehn Festplatten in unserem Beispiel bilden zwei RAID-1-Arrays (Boot- und Index-Laufwerk), das RAID-5-Array (Datendateien) und das Hot-Spare-Laufwerk. Sie können mit dem Server in einem 19-Zoll-Gehäuse untergebracht werden. In einem 19-Zoll-Schrank ist alles dicht beieinander, was zu lange SCSI-Kabel vermeidet. Auch hier sollten separate, aktive Terminatoren benutzt werden, um Probleme beim Tausch einer defekten Festplatte zu vermeiden. Zusätzlich müssen Netzteile und das Kühlsystem die Anforderungen einer solchen Konfiguration erfüllen.

Mehr Kapazität für den Datenbankserver

Wenn mehr Kapazität in einem Datenbankserver benötigt wird, können einfach einige Festplatten hinzugefügt und zu einem neuen RAID-Array konfiguriert werden. Abhängig von der benötigten Kapazität können das sowohl ein RAID-1- als auch ein RAID-5-Array sein.

Wenn nur mit großen Dateien gearbeitet wird und das Array üblicherweise nur von einem Prozess zur gleichen Zeit benutzt wird, kann ein RAID-4-System in manchen Situationen einen etwas höheren Datendurchsatz als RAID 5 ermöglichen.

Storage-Erweiterung: Je nach den Anforderungen lässt sich die Storage-Kapazität eines Datenbankservers mit einem weiteren RAID-Verbund einfach erweitern. (Quelle: ICP)

Wenn die Datenverfügbarkeit nicht so wichtig ist, aber der Datendurchsatz so hoch wie möglich sein soll, kann ein RAID-0-Array eine mögliche Wahl sein. Wenn beides, Sicherheit und Datendurchsatz, wichtig ist, ist eine kombinierte Lösung aus RAID 1 (Sicherheit) und RAID 0 (Geschwindigkeit), also RAID 10 die beste Lösung. (hal)