====== Консольные утилиты 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}}