====== Консольные утилиты RAID-массивов ======
[[http://www.watters.ws/mediawiki/index.php/RAID_controller_commands|http://www.watters.ws/mediawiki/index.php/RAID_controller_commands]]
https://hwraid.le-vert.net/wiki
==== megarc ====
1. Узнать емкости и модели винтов в RAID-массиве можно так
megarc -phys -chAll -idAll -a0
2. Состояние RAID-массива
megarc -dispCfg -a0
3. Отобразить историю ошибок физического диска
megarc -pdFailInfo -chAll -idAll -a0
4. Логи
megarc -LogPhysInfo -a0
5. Статус самого контроллера
megarc -ctlrInfo -a0
6. Запуск консистенси чека на всех LUN'ах
megarc –chkonLd –a0 –Lall
7. Просмотр состояния ребилда
megarc -showRbld -a0
8. Информация о логическом диске
megarc -ldInfo -l0 -a0
9. Изменить rebuild rate (не рекомендуется ставить больше 40%, значения выше 90% сделают диски недоступными для чего либо кроме ребилда)
megarc -setRbldRate 35 -a0
10. Запустить перестроение массива. Следующая команда запусти ребилд на адаптере 0 (-a0) канала 0 диска 2 [0:2] (можно не указывать -ShowProg если не нужно отображать процесс перестроения массива)
megarc -doRbld -a0 -RbldArray[0:2] -ShowProg
11. Отключить звук аларма (само состояние аларма остается)
megarc -silenceAlarm -a0
12. Включить диск, находящийся в состоянии "ошибка". x=номер канала, обычно 0 y=id физического диска
megarc -physOn -a0 pd[x:y]
13. Выключить диск
megarc -physOff -a0 pd[x:y]
14. Удалить логический диск x
megarc -DelLd -a0 -lx
Удалить ЛД 1
megarc -DelLd -a0 -l1
15. Создать логический диск RAID-5
megarc -addCfg -a0 -R5[0:0,0:1,0:2,0:3,0:4,0:5,0:6,0:7]
==== tw_cli ====
tw_cli show
tw_cli /c6 show
tw_cli /c6 show all
tw_cli /c6/p4 remove
tw_cli /c6 rescan
tw_cli /c6/u0 show
tw_cli /c6/u0 show all
tw_cli /c6/u0 start rebuild disk=4
tw_cli maint rebuild c6 u0 p0
tw_cli rescan
tw_cli /c6/bbu show all
tw_cli /c6/bbu test quiet
==== smartctl ====
smartctl -a -d 3ware,0 /dev/twa0
smartctl -a -d 3ware,1 /dev/twa0
smartctl -a -d 3ware,2 /dev/twa0
smartctl -a -d 3ware,3 /dev/twa0
smartctl -a -d 3ware,4 /dev/twa0
smartctl -a -d 3ware,5 /dev/twa0
smartctl -a -d 3ware,6 /dev/twa0
smartctl -a -d 3ware,7 /dev/twa0
smartctl --all -d aacraid,0,0,2 /dev/sda
==== arcconf ====
1. Информация об адаптере
arcconf GETCONFIG 1 AD
2. Информация о логических дисках
arcconf GETCONFIG 1 LD
3. Информация о физических дисках
arcconf GETCONFIG 1 PD
arcconf getconfig 1 pd|egrep "Device #|Model|State\>|Reported Location|Reported Channel|S.M.A.R.T. warnings"
watch -n 10 "arcconf getconfig 1 pd|egrep 'Device #|State\>|Reported Location|Reported Channel|S.M.A.R.T.|Serial'"
4. Чтение лога событий (выводит в xml-формате, с параметром tabular в текстовом)
arcconf GETLOGS 1 event
5. Создание RAID-массивов:
Перед использованием дисков их нужно инициализировать. В примере ниже инициализируются диски 6 и 7 на канале 0
arcconf task start 1 device 0 6 INITIALIZE
arcconf task start 1 device 0 7 INITIALIZE
И затем из этих дисков собирается RAID-1
arcconf create 1 logicaldrive max 1 0 6 0 7
То же самое, но с назначением имени "ar2" логическому диску и отменой запроса подтверждения(noprompt)
arcconf create 1 logicaldrive name ar2 max 1 0 6 0 7 noprompt
Создание RAID-10 из 4х дисков
arcconf CREATE 1 LOGICALDRIVE MAX 10 0 4 0 5 0 6 0 7 noprompt
Пробросим один диск как Single Volume
arcconf create 1 logicaldrive max volume 0 5
6. Удаление логического диска
arcconf DELETE 1 LOGICALDRIVE 1
7. После каких-либо изменений в физическом составе дисков следует дать команду контроллеру пересканировать диски
arcconf rescan 1
8. Обновление прошивки
arcconf romupdate [CONTROLLERNUMMER] [ROMFILE]01.ufi
9. Очистка диска от информации о raid-массиве, в котором он был
arcconf TASK START 1 DEVICE 0 0 CLEAR
10. Запуск проверки диска
arcconf TASK START DEVICE VERIFY
arcconf TASK START 1 DEVICE 0 5 VERIFY
11. Просмотр состояния запущенных задач
arcconf getstatus 1
12. Работа с hot-spare дисками
Назначить в качестве глобального hot-spare диска физический диск 5 на канале 0
arcconf SETSTATE 1 DEVICE 0 5 HSP
Назначить в качестве hot-spare диска для логического диска с указанным номером физический диск 5 на канале 0
arcconf SETSTATE 1 DEVICE 0 5 HSP LOGICALDRIVE
убрать из hot-spare физический диск 5 на канале 0
arcconf SETSTATE 1 DEVICE 0 5 RDY
13. Если в контроллере идут какие-то фоновые задачи, то просмотр их состояния выполняется следующей командой
arcconf GETSTATUS 1
Для длительного мониторинга выполнения задач удобно использовать команду watch.
watch -n 10 arcconf GETSTATUS 1
watch -n 10 "arcconf GETSTATUS 1;arcconf getconfig 1 pd|egrep 'Device #|^ *State|Reported Channel|S.M.A.R.T. warnings'"
14. Изменение статуса диска в массиве
Принудительно пометить диск (0 4) как Failed
arcconf SETSTATE 1 DEVICE 0 4 DDD
Назначить диск как HotSpare глобально
arcconf SETSTATE 1 DEVICE 0 4 HSP
или для конкретного логического диска
arcconf SETSTATE 1 DEVICE 0 4 HSP LOGICALDRIVE 0
Вернуть диск в состояние Ready
arcconf SETSTATE 1 DEVICE 0 4 RDY
==== megarc ====
1. Узнать емкости и модели винтов в RAID-массиве можно так
megarc -phys -chAll -idAll -a0
2. Состояние RAID-массива
megarc -dispCfg -a0
3. Отобразить историю ошибок физического диска
megarc -pdFailInfo -chAll -idAll -a0
4. Логи
megarc -LogPhysInfo -a0
5. Статус самого контроллера
megarc -ctlrInfo -a0
6. Запуск консистенси чека на всех LUN'ах
megarc –chkonLd –a0 –Lall
7. Просмотр состояния ребилда
megarc -showRbld -a0
8. Информация о логическом диске
megarc -ldInfo -l0 -a0
9. Изменить rebuild rate (не рекомендуется ставить больше 40%, значения выше 90% сделают диски недоступными для чего либо кроме ребилда)
megarc -setRbldRate 35 -a0
10. Запустить перестроение массива. Следующая команда запусти ребилд на адаптере 0 (-a0) канала 0 диска 2 [0:2] (можно не указывать -ShowProg если не нужно отображать процесс перестроения массива)
megarc -doRbld -a0 -RbldArray[0:2] -ShowProg
11. Отключить звук аларма (само состояние аларма остается)
megarc -silenceAlarm -a0
12. Включить диск, находящийся в состоянии "ошибка". x=номер канала, обычно 0 y=id физического диска
megarc -physOn -a0 pd[x:y]
13. Выключить диск
megarc -physOff -a0 pd[x:y]
14. Удалить логический диск x
megarc -DelLd -a0 -lx
Удалить ЛД 1
megarc -DelLd -a0 -l1
15. Создать логический диск RAID-5
megarc -addCfg -a0 -R5[0:0,0:1,0:2,0:3,0:4,0:5,0:6,0:7]
==== tw_cli ====
tw_cli show
tw_cli /c6 show
tw_cli /c6 show all
tw_cli /c6/p4 remove
tw_cli /c6 rescan
tw_cli /c6/u0 show
tw_cli /c6/u0 show all
tw_cli /c6/u0 start rebuild disk=4
tw_cli maint rebuild c6 u0 p0
tw_cli rescan
tw_cli /c6/bbu show all
tw_cli /c6/bbu test quiet
==== smartctl ====
smartctl -a -d 3ware,0 /dev/twa0
smartctl -a -d 3ware,1 /dev/twa0
smartctl -a -d 3ware,2 /dev/twa0
smartctl -a -d 3ware,3 /dev/twa0
smartctl -a -d 3ware,4 /dev/twa0
smartctl -a -d 3ware,5 /dev/twa0
smartctl -a -d 3ware,6 /dev/twa0
smartctl -a -d 3ware,7 /dev/twa0
smartctl --all -d aacraid,0,0,2 /dev/sda
smartctl -a -d cciss,0 /dev/sda
==== arcconf ====
1. Информация об адаптере
arcconf GETCONFIG 1 AD
2. Информация о логических дисках
arcconf GETCONFIG 1 LD
3. Информация о физических дисках
arcconf GETCONFIG 1 PD
arcconf getconfig 1 pd|egrep "Device #|Model|State\>|Reported Location|Reported Channel|S.M.A.R.T. warnings"
watch -n 10 "arcconf getconfig 1 pd|egrep 'Device #|State\>|Reported Location|Reported Channel|S.M.A.R.T. warnings'"
4. Чтение лога событий (выводит в xml-формате, с параметром tabular в текстовом)
arcconf GETLOGS 1 event
5. Создание RAID-массивов:
Перед использованием дисков их нужно инициализировать. В примере ниже инициализируются диски 6 и 7 на канале 0
arcconf task start 1 device 0 6 INITIALIZE
arcconf task start 1 device 0 7 INITIALIZE
Инициализировать сразу 8 дисков одной строкой (вариант по одному и все разом)
for i in $(seq 0 7); do arcconf task start 1 device 0 $i INITIALIZE noprompt; done
arcconf task start 1 DEVICE ALL INITIALIZE
И затем из этих дисков собирается RAID-1
arcconf create 1 logicaldrive max 1 0 6 0 7
То же самое, но с назначением имени "ar2" логическому диску и отменой запроса подтверждения(noprompt)
arcconf create 1 logicaldrive name ar2 max 1 0 6 0 7 noprompt
Создание RAID-10 из 4х дисков и из 8
arcconf CREATE 1 LOGICALDRIVE MAX 10 0 4 0 5 0 6 0 7 noprompt
arcconf CREATE 1 LOGICALDRIVE Stripesize 16 Name data Rcache RON Wcache WBB MAX 10 0 0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 noprompt
6. Удаление логического диска
arcconf DELETE 1 LOGICALDRIVE 1
7. После каких-либо изменений в физическом составе дисков следует дать команду контроллеру пересканировать диски
arcconf rescan 1
8. Обновление прошивки
arcconf romupdate [CONTROLLERNUMMER] [ROMFILE]01.ufi
9. Очистка диска от информации о raid-массиве, в котором он был
arcconf TASK START 1 DEVICE 0 0 CLEAR
10. Запуск проверки диска
arcconf TASK START DEVICE VERIFY
11. Работа с hot-spare дисками
Назначить в качестве глобального hot-spare диска физический диск 5 на канале 0
arcconf SETSTATE 1 DEVICE 0 5 HSP
Назначить в качестве hot-spare диска для логического диска с указанным номером физический диск 5 на канале 0
arcconf SETSTATE 1 DEVICE 0 5 HSP LOGICALDRIVE
убрать из hot-spare физический диск 5 на канале 0
arcconf SETSTATE 1 DEVICE 0 5 RDY
12. Если в контроллере идут какие-то фоновые задачи, то просмотр их состояния выполняется следующей командой
arcconf GETSTATUS 1
Для длительного мониторинга выполнения задач удобно использовать команду watch.
watch -n 10 arcconf GETSTATUS 1
watch -n 10 "arcconf getstatus 1;arcconf GETCONFIG 1 LD"
==== ssacli & hpacucli====
Эти программы часто могут использоваться для одних и тех же контроллеров. Поддерживаемые модели контроллеров и набор команд варьируются в зависимости от версий утилит.
https://support.hpe.com/hpsc/doc/public/display?docId=emr_na-c03493210
http://pyatilistnik.org/spisok-komand-hpssacli-dlya-rabotyi-s-raid-smart-array-p410i-na-esxi-5-5/
ssacli ctrl all show detail
ssacli ctrl slot=1 show detail
ssacli ctrl slot=1 show config
ssacli ctrl slot=1 array all show
ssacli ctrl slot=1 array all show status
ssacli ctrl slot=1 array A show detail
ssacli ctrl slot=1 rescan
ssacli ctrl slot=1 physicaldrive all show
ssacli ctrl slot=1 physicaldrive 1I:0:5 show status
ssacli ctrl slot=1 physicaldrive 1I:0:5 show detail
ssacli ctrl slot=1 Array A logicaldrive all show detail
ssacli ctrl slot=1 array A delete
ssacli ctrl slot=1 physicaldrive allunassigned show
ssacli ctrl slot=1 create type=ld drives=allunassigned raid=50
ssacli ctrl slot=1 create type=ld drives=allunassigned raid=1
ssacli ctrl slot=1 create type=ld drives=1I:1:1,1I:1:2,1I:1:3,1I:1:4,1I:1:5,1I:1:6 raid=50
ssacli ctrl slot=1 create type=ld drives=allunassigned raid=1+0
ssacli ctrl slot=1 create type=ld drives=1I:1:1,1I:1:2,1I:1:3,1I:1:4,1I:1:5,1I:1:6 raid=1+0
ssacli ctrl slot=1 create type=ld raid=1+0 drives=5I:1:4,5I:1:6,5I:1:7,5I:1:9,5I:1:10,5I:1:12 stripsize=16 arrayaccelerator=enable writepolicy=writeback
ssacli ctrl slot=1 create type=ld raid=1+0 drives=1I:1:5,1I:1:6,1I:1:7,1I:1:8,1I:1:1,1I:1:2,1I:1:3,1I:1:4 stripsize=16 arrayaccelerator=enable size=$((12*1024*1024))
ssacli ctrl slot=1 create type=ld drives=1I:1:2 raid=0
# Delete - Logical Drive 2
ssacli ctrl slot=1 ld 2 delete
ssacli ctrl slot=1 ld 2 modify stripsize=256
ssacli ctrl slot=1 array A add spares=allunassigned sparetype=autoreplace
ssacli ctrl slot=2 modify drivewritecache=disable
ssacli ctrl slot=2 create type=ldcache drives=5I:1:11 datald=2
hpacucli controller slot=1 logicaldrive 1 modify arrayaccelerator=enable
ssacli ctrl slot=1 modify dwc=enable
hpacucli ctrl slot=1 modify cacheratio=25/75
ssacli ctrl slot=1 modify cacheratio=25/75
ssacli ctrl slot=1 modify cacheratio=10/90
hpacucli ctrl slot=1 array A delete
hpacucli ctrl slot=1 create type=ld drives=1I:1:1,1I:1:2,1I:1:3,1I:1:4,1I:1:5,1I:1:6 raid=1+0adm stripsize=256 arrayaccelerator=enable caching=enable size=
hpacucli ctrl slot=1 create type=ld drives=1I:1:1,1I:1:2,1I:1:3,1I:1:4,1I:1:5,1I:1:6 raid=1+0 stripsize=256 caching=enable
hpacucli ctrl slot=1 array all show detail
hpacucli ctrl slot=1 Array A logicaldrive all show detail
==== storcli & perccli ====
Commands Description
-------------------------------------------------------------------
add Adds/creates a new element to controller like VD,Spare..etc
delete Deletes an element like VD,Spare
show Displays information about an element
set Set a particular value to a property
get Get a particular value to a property
compare Compares particular value to a property
start Start background operation
stop Stop background operation
pause Pause background operation
resume Resume background operation
download Downloads file to given device
expand expands size of given drive
insert inserts new drive for missing
transform downgrades the controller
/cx Controller specific commands
/ex Enclosure specific commands
/sx Slot/PD specific commands
/vx Virtual drive specific commands
/dx Disk group specific commands
/fall Foreign configuration specific commands
/px Phy specific commands
/[bbu|cv] Battery Backup Unit, Cachevault commands
{{tag>hardware raid shell}}