RAID Konfiguration mit StorCLI
Für Root Server Dual und Root Storage Server verwendet Nine Intel Server Hardware mit einem dedizierten RAID Controller Integrated RAID Module RMS25CB080. In diesem Artikel wird die initiale Einrichtung eines RAID-Arrays beschrieben und einige Tipps zur Verwendung gegeben. Für erweiterte Konfigurationen verweisen wir auf das Broadcom StorCLI Handbuch.
StorCLI
Um das Hardware RAID zu konfigurieren, zu verändern oder zu überwachen, kann das Tool StorCLI verwendet werden.
StorCLI ist ein Kommandozeilen-Werkzeug, zur Administration von LSI Controllern (früher MegaRAID Controller und der Nachfolger des daraus stammenden MegaCLI).
Download
StorCLI ist über die Intel Download-Seite zu beziehen und als root zu verwenden.
Download via https://www.intel.com/content/www/us/en/download/17809/820588/storcli-standalone-utility.html.
Installation
Das äussere Zip-Archiv entpacken:
root@root-server-dual:~# unzip StorCLI_007.2705.0000.0000.zip
root@root-server-dual:~# cd StorCLI_007.2705.0000.0000/
Binaries und Pakete entpacken:
root@root-server-dual:~/StorCLI_007.2705.0000.0000# unzip Unified_storcli_all_os.zip
Das für Ubuntu / Debian verwendbare Paket ist im Verzeichnis Unified_storcli_all_os/Ubuntu zu finden, für CentOS/RHEL unter Unified_storcli_all_os/Linux.
root@root-server-dual:~/StorCLI_007.2705.0000.0000# dpkg -i Unified_storcli_all_os/Ubuntu/storcli_007.2705.0000.0000_all.deb
Vormals nicht ausgewähltes Paket storcli wird gewählt.
(Lese Datenbank ... 416152 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von .../storcli_007.2705.0000.0000_all.deb ...
Entpacken von storcli (007.2705.0000.0000) ...
storcli (007.2705.0000.0000) wird eingerichtet ...
Verwendung
root@root-server-dual:~# cd /opt/MegaRAID/storcli
root@root-server-dual:/opt/MegaRAID/storcli# ./storcli64
-
Informationen über verfügbare Controller (/cx)
./storcli64 show -
Informationen zum gewählten Controller und dessen Konfiguration
./storcli64 /c0 show
Dieser Befehl liefert eine Übersicht über die konfigurierten Virtual Drives (/vall) und die verfügbaren Festplatten:
./storcli64 /c0 /vall show all
Unter den Übersichten findet sich eine Erklärung der verwendeten Abkürzungen. Zum Beispiel:
TOPOLOGY :
========
--------------------------------------------------------------------------
DG Arr Row EID:Slot DID Type State BT Size PDC PI SED DS3 FSpace
--------------------------------------------------------------------------
0 - - - - RAID0 Optl N 3.633 TB dflt N N none N
0 0 - - - RAID0 Optl N 3.633 TB dflt N N none N
0 0 0 252:0 8 DRIVE Onln N 930.390 GB dflt N N none -
0 0 1 252:1 9 DRIVE Onln N 930.390 GB dflt N N none -
0 0 2 252:2 10 DRIVE Onln N 930.390 GB dflt N N none -
0 0 3 252:3 11 DRIVE Onln N 930.390 GB dflt N N none -
--------------------------------------------------------------------------
DG=Disk Group Index|Arr=Array Index|Row=Row Index|EID=Enclosure Device ID
DID=Device ID|Type=Drive Type|Onln=Online|Rbld=Rebuild|Dgrd=Degraded
Pdgd=Partially degraded|Offln=Offline|BT=Background Task Active
PDC=PD Cache|PI=Protection Info|SED=Self Encrypting Drive|Frgn=Foreign
DS3=Dimmer Switch 3|dflt=Default|Msng=Missing|FSpace=Free Space Present
- Informationen zu den vorhandenen Festplatten und deren Status (Seriennummer, Temperatur, ...)
/ealldieses Objekt identifiziert alle Enclosures auf dem Controller./salldiese Objekt identifiziert alle Drives im Enclosure.
./storcli64 /c0 /eall /sall show all
RAIDs erstellen
Hier einige Beispiele für die Erstellung eines Virtual Drive (RAID-Array):
-
RAID 1 erstellen
./storcli64 /c0 add vd type=raid1 names=tmp1 drives=252:2-3
Dieser Befehl erstellt ein Virtual Drive über die gesamte verfügbare Grösse. Mit der Option size=100gb kann eine feste Grösse definiert werden.
/c0 - bestimmt den Controller.
type= diese Option legt den Typ des RAID-Array fest. Folgende Typen stehen zur Auswahl: raid0, raid1, raid5 und raid6
name= legt den Namen für das Virtual Drive fest.
drives= hier muss festgelegt werden, welche Drives für das Virtual Drive verwendet werden sollen: drives=[EnclosureID:SlotID|:SlotID-SlotID|:SlotID,SlotID]
Folgende Optionen können beim Erstellen eines RAID-Arrays gesetzt werden:
| Option | Value Range | Beschreibung |
|---|---|---|
| type | raid 0,1,5,6,10,50,60 | RAID-Typ |
| size | max. Grösse des Virtual Drive basierend auf Festplattengrösse und RAID-Typ. | Setzt die Grösse des Virtual Drive. |
| name | Setzt den Namen des Virtual Drive. | |
| drives | e:s - e:s-x - e:s-x,y | Bestimmt die zu verwendenden Laufwerke. |
| pdcache | on - off | Aktiviert oder deaktiviert PD-Cache. |
| strip | 8, 16, 32, 64, 128, 256, 512, 1024. | Setzt die strip Grösse für die RAID-Konfiguration. |
Falls ein komplexeres RAID (z.B. RAID 10) erstellt werden soll, kann es notwendig sein, zusätzlich die Anzahl an Disks pro RAID anzugeben:
PDperArray=
Hier einige Beispiele:
-
RAID 5 erstellen
./storcli64 /c0 add vd type=raid5 names=tmp1 drives=252:2-6 -
RAID 6 erstellen
./storcli64 /c0 add vd type=raid6 names=tmp1 drives=252:2-7 -
RAID 10 erstellen
./storcli64 /c0 add vd type=raid10 size=200gb,300gb,400gb names=tmp1,tmp2,tmp3 drives=252:2-3,5,7 pdperarray=2 -
Status aller laufenden Rebuilds anzeigen
./storcli64 /c0 /eall /sall show rebuild
RAIDs migrieren
Mit dem Befehl migrate kann ein RAID-Array erweitert oder in einen anderen RAID-Typ umgewandelt werden.
Bestehende RAID-Arrays können in folgende RAID-Typen migriert werden:
| Aktueller RAID-Level | Migrierter RAID-Level |
|---|---|
| RAID 0 | RAID 1 |
| RAID 0 | RAID 5 |
| RAID 0 | RAID 6 |
| RAID 1 | RAID 0 |
| RAID 1 | RAID 5 |
| RAID 1 | RAID 6 |
| RAID 5 | RAID 0 |
| RAID 5 | RAID 6 |
| RAID 6 | RAID 0 |
| RAID 6 | RAID 5 |
RAID5 Disk Array erweitern:
./storcli64 /c0/v1 start migrate raid5 option=add drive=0:0,0:1
Status der Erweiterung überprüfen:
./storcli64 /c0/v1 show migrate
Standardmässig werden 30% der I/O für die Migration verwendet. Dieser Wert kann wie folgt abgefragt und geändert werden:
./storcli64 /c0 show migraterate
./storcli64 /c0 set migraterate=70
Troubleshooting
Festplatte ersetzen:
- Seriennummern der Festplatten auslesen
./storcli64 /c0 /eall /sall show all | grep -B 2 SN
Dieser Befehl markiert die zum Beispiel defekte Festplatte als offline:
./storcli64 /c0 /e252 /s1 set offline
Folgender Befehl teilt dem System mit, dass die Festplatte fehlt. Dies ist von Nutzen, sobald sie ersetzt werden soll:
./storcli64 /c0 /e252 /s1 set missing
Dies fährt die angegebene Festplatte herunter:
./storcli64 /c0 /e252 /s1 spindown
Der Rebuild startet nach dem Einsetzen der neuen Festplatte automatisch:
./storcli64 /c0 /eall /sall show rebuild