HP RAID hpacucli und LInux
Ein RAID is was tolles, ein schnelles RAID noch besser und ein schnelles RAID mit HotSpare Disks einfach nur traumhaft. Also, wie bauen wir das mit HP Controllern?
Wir benötigen das Programm hpacucli.
Das liegt bei HP als RPM vor
<Download der aktuellen Version>
Hier ein kurzer Überblick über die wichtigsten Kommandos:
Controller Staus & Config
hpacucli> ctrl all show config
hpacucli> ctrl all show config detail
hpacucli> ctrl all show status
Hpacucli kann mehrere Controller verwalten. Diese werden in verschiedenen Slots geparkt.
Also ist die Syntax immer
<Programm> <Controller> <Command> <Options>
Wichtig sind auch noch die verwendeten Abkützungen:
- controller = ctrl
- logicaldrive = ld
- physicaldrive = pd
Arbeiten mit Platten
Anzeigen – mit Detailansicht
hpacucli> ctrl slot=0 pd all show
hpacucli> ctrl slot=0 pd 2:3 show detail
Status für alle oder für eine Platte
hpacucli> ctrl slot=0 pd all show status
hpacucli> ctrl slot=0 pd 2:3 show status
Eine Platte löschen
hpacucli> ctrl slot=0 pd 2:3 modify erase
Locator LED an/aus
hpacucli> ctrl slot=0 pd 2:3 modify led=on
hpacucli> ctrl slot=0 pd 2:3 modify led=off
Arbeiten mit RAIDs
Anzeigen was angelegt ist – Detailansicht optional:
hpacucli> ctrl slot=0 ld all show (detail)
hpacucli> ctrl slot=0 ld 4 show (detail)
Status aller Logical Drives oder selektiv
hpacucli> ctrl slot=0 ld all show status
hpacucli> ctrl slot=0 ld 4 show status
Locator LED für alle Platten des Logical Drive an/aus
hpacucli> ctrl slot=0 ld 4 modify led=on
hpacucli> ctrl slot=0 ld 4 modify led=off
Defekte Platte wiederbeleben
hpacucli> ctrl slot=0 ld 4 modify reenable forced
Logical Drives basteln
Erstellen
Eine Platte
hpacucli> ctrl slot=0 create type=ld drives=1:12 raid=0
Mirror
hpacucli> ctrl slot=0 create type=ld drives=1:13,1:14 size=300 raid=1
RAID 5
hpacucli> ctrl slot=0 create type=ld drives=1:13,1:14,1:15,1:16,1:17 raid=5
LD entfernen
hpacucli> ctrl slot=0 ld 4 delete
LD erweitern
hpacucli> ctrl slot=0 ld 4 add drives=2:3
Hot Spare Platten können für die gesamte landschaft am Controller oder spezifisch einem Array zugeordnet werden.
hpacucli> ctrl slot=0 array all add spares=1:5,1:7
hpacucli> ctrl slot=0 array B add spares=1:5,1:7
Praxisbeispiel:
Ein HP MSA 60 mit 12x 450gb SAS HDDs soll ein RAID5+0 mit zwei Spare Disks werden.
Aktuellen Zustand auflisten:
dbtestfarm01:~ # hpacucli ctrl slot=2 show config
Smart Array P812 in Slot 2 (sn: XXXXXXXXXXXXXXXXX)
unassigned
physicaldrive 1E:1:1 (port 1E:box 1:bay 1, SAS, 450 GB, OK)
physicaldrive 1E:1:2 (port 1E:box 1:bay 2, SAS, 450 GB, OK)
physicaldrive 1E:1:3 (port 1E:box 1:bay 3, SAS, 450 GB, OK)
physicaldrive 1E:1:4 (port 1E:box 1:bay 4, SAS, 450 GB, OK)
physicaldrive 1E:1:5 (port 1E:box 1:bay 5, SAS, 450 GB, OK)
physicaldrive 1E:1:6 (port 1E:box 1:bay 6, SAS, 450 GB, OK)
physicaldrive 1E:1:7 (port 1E:box 1:bay 7, SAS, 450 GB, OK)
physicaldrive 1E:1:8 (port 1E:box 1:bay 8, SAS, 450 GB, OK)
physicaldrive 1E:1:9 (port 1E:box 1:bay 9, SAS, 450 GB, OK)
physicaldrive 1E:1:10 (port 1E:box 1:bay 10, SAS, 450 GB, OK)
physicaldrive 1E:1:11 (port 1E:box 1:bay 11, SAS, 450 GB, OK)
physicaldrive 1E:1:12 (port 1E:box 1:bay 12, SAS, 450 GB, OK)
Ein LogicalDrive mit 10 Platten im RAID 5+0 erstellen
dbtestfarm01:~ # hpacucli ctrl slot=2 create type=ld drives=1E:1:1,1E:1:2,1E:1:3,1E:1:4,1E:1:5,1E:1:6,1E:1:7,1E:1:8,1E:1:9,1E:1:10 raid=50
Config anzeigen:
dbtestfarm01:~ # hpacucli ctrl slot=2 show config
Smart Array P812 in Slot 2 (sn: XXXXXXXXXXXXXXXXX)
array A (SAS, Unused Space: 0 MB)
logicaldrive 1 (3.3 TB, RAID 50, OK)
physicaldrive 1E:1:1 (port 1E:box 1:bay 1, SAS, 450 GB, OK)
physicaldrive 1E:1:2 (port 1E:box 1:bay 2, SAS, 450 GB, OK)
physicaldrive 1E:1:3 (port 1E:box 1:bay 3, SAS, 450 GB, OK)
physicaldrive 1E:1:4 (port 1E:box 1:bay 4, SAS, 450 GB, OK)
physicaldrive 1E:1:5 (port 1E:box 1:bay 5, SAS, 450 GB, OK)
physicaldrive 1E:1:6 (port 1E:box 1:bay 6, SAS, 450 GB, OK)
physicaldrive 1E:1:7 (port 1E:box 1:bay 7, SAS, 450 GB, OK)
physicaldrive 1E:1:8 (port 1E:box 1:bay 8, SAS, 450 GB, OK)
physicaldrive 1E:1:9 (port 1E:box 1:bay 9, SAS, 450 GB, OK)
physicaldrive 1E:1:10 (port 1E:box 1:bay 10, SAS, 450 GB, OK)unassigned
physicaldrive 1E:1:11 (port 1E:box 1:bay 11, SAS, 450 GB, OK)
physicaldrive 1E:1:12 (port 1E:box 1:bay 12, SAS, 450 GB, OK)
Die zwei verbliebenen Disks als HotSpare Disks für das Array zuweisen:
dbtestfarm01:~ # hpacucli ctrl slot=2 array A add spares=1E:1:11,1E:1:12
Finale Config angucken:
dbtestfarm01:~ # hpacucli ctrl slot=2 show config
Smart Array P812 in Slot 2 (sn: XXXXXXXXXXXXXXXXX)
array A (SAS, Unused Space: 0 MB)
logicaldrive 1 (3.3 TB, RAID 50, OK)
physicaldrive 1E:1:1 (port 1E:box 1:bay 1, SAS, 450 GB, OK)
physicaldrive 1E:1:2 (port 1E:box 1:bay 2, SAS, 450 GB, OK)
physicaldrive 1E:1:3 (port 1E:box 1:bay 3, SAS, 450 GB, OK)
physicaldrive 1E:1:4 (port 1E:box 1:bay 4, SAS, 450 GB, OK)
physicaldrive 1E:1:5 (port 1E:box 1:bay 5, SAS, 450 GB, OK)
physicaldrive 1E:1:6 (port 1E:box 1:bay 6, SAS, 450 GB, OK)
physicaldrive 1E:1:7 (port 1E:box 1:bay 7, SAS, 450 GB, OK)
physicaldrive 1E:1:8 (port 1E:box 1:bay 8, SAS, 450 GB, OK)
physicaldrive 1E:1:9 (port 1E:box 1:bay 9, SAS, 450 GB, OK)
physicaldrive 1E:1:10 (port 1E:box 1:bay 10, SAS, 450 GB, OK)
physicaldrive 1E:1:11 (port 1E:box 1:bay 11, SAS, 450 GB, OK, spare)
physicaldrive 1E:1:12 (port 1E:box 1:bay 12, SAS, 450 GB, OK, spare)
Das wars =)