Unterschiede zwischen Hardware RAID und Linux Software RAID

Aus Thomas-Krenn-Wiki
Wechseln zu: Navigation, Suche

Für Linux Server stellt sich häufig die Frage, ob ein Hardware RAID Controller oder Linux Software RAID für das Speichersubsystem zum Einsatz kommen soll. Dieser Artikel zeigt die Unterschiede zwischen Hardware RAID und Linux Software RAID.

Vergleichstabelle

HW RAID SW RAID
Controller

HW RAID Controller
(z.B. Adaptec oder Avago MegaRAID (vormals LSI))

SATA Ports des Chipset oder SAS HBA
(z.B. Avago HBAs (vormals LSI))

Aufbau Aufbau von HW-RAID Aufbau von SW-RAID
RAID-Berechnungen in HW-RAID-Chip in CPU
schreiben
  • Schreibzugriffe werden im Cache des RAID Controllers zwischengespeichert.
  • Das Betriebssystem bekommt in diesem Moment das write acknowledge zurück.
  • Anschließend werden die Daten auf HDD/SDD geschrieben.
  • Hinweis: Der Cache muss durch BBU, Adaptec ZMCP oder LSI CacheVault geschützt werden.
  • Schreibzugriffe erfolgen direkt auf HDD/SDD.
  • Bei RAID 5 und RAID 6 kommt es bei Schreibzugriffen, die nicht über den ganzen Stripe gehen, zum write penalty[1][2]
  • Zur Vermeidung des write penalty ist RAID 10 empfehlenswert.[3][4][5][6]
  • Hinweis: Beim Einsatz von HDDs müssen deren Caches deaktiviert werden, damit es bei einem Stromausfall zu keinem Datenverlust kommt (siehe Linux Software RAID#Festplatten Cache deaktivieren). Dies führt zu einer verminderten Schreib-Performance. Idealer ist hier der Einsatz von Enterprise SSDs mit Power-Loss-Protection, da deren Caches aktiviert bleiben können.
lesen
  • meist direkt von HDD/SSD
  • Anmerkung: RAID Cache Hits sind selten, da die typische Cachegröße von 1 GB im Vergleich zur Datenmenge des gesamten RAID Sets klein ist; außerdem ist der Linux Page Cache (ungenutzter RAM, der zum Cachen von Leseoparationen verwendet wird) ebenfalls meist größer als 1 GB.
  • direkt von HDD/SSD
unterstützte Betriebsysteme

Abhängig von RAID Controller, meist eine umfangreiche Liste an Betriebssystemen:

  • Linux
  • Windows
  • VMware
  • ...
  • Linux
SSD Unterstützung
  • SSDs werden unterstützt
Booten vom RAID
  • Booten von jedem RAID Level möglich

Einzelnachweise

  1. RAID - RAID 5: Leistung + Parität, Block-Level Striping mit verteilter Paritätsinformation (de.wikipedia.org)
  2. Standard RAID levels - RAID 5 parity handling (en.wikipedia.org)
  3. Linux software RAID: RAID 5 vs RAID 10 performance and other RAID levels (ilsistemista.net, 08.07.2010)
  4. Intro to Nested-RAID: RAID-01 and RAID-10 (linux-mag.com, 06.01.2011)
  5. RAID10 in Linux MD driver (Neil Brown, Maintainer mdraid, 27.08.2004)
  6. Non-standard RAID levels - Linux MD RAID 10 (en.wikipedia.org)
  7. GNU GRUB Manual 2.00: Device syntax (www.gnu.org)
  8. GNU GRUB Manual 2.00: Environment block (www.gnu.org)


Foto Werner Fischer.jpg

Autor: Werner Fischer

Werner Fischer, tätig im Bereich Communications / Knowledge Transfer bei Thomas-Krenn, hat sein Studium zu Computer- und Mediensicherheit an der FH Hagenberg abgeschlossen. Er ist regelmäßig Autor in Fachzeitschriften und Speaker bei Konferenzen wie LinuxCon, OSDC, OSMC, LinuxTag u.v.m. Seine Freizeit gestaltet er sehr abwechslungsreich. In einem Moment absolviert er seinen Abschluss im Klavierspielen, im anderen läuft er beim Linzmarathon in der Staffel mit oder interessiert sich für OpenStreetMap.


Das könnte Sie auch interessieren

Cacti installieren
Linux I/O Performance Messungen mit iostat
MegaRAID Storage Manager unter Debian 7.4 installieren