====== Mega CLI ====== Broadcom/Avago/LSI Syncro/MegaRAID Controllers File Name: MR_SAS_StorCLI_6-7-1-15-12-SCGCQ00852539.zip Download URL: http://docs.avagotech.com/docs/12354905 Dell PERC Hardware RAID Controllers File Name: perccli-1.11.03-1_Linux_A00.tar.gz Download URL: https://downloads.dell.com/FOLDER02444760M/1/perccli-1.11.03-1_Linux_A00.tar.gz Adaptec AACRAID Controllers File Name: arcconf_v1_8_21375.zip Download URL: https://storage.microsemi.com/en-us/speed/raid/storage_manager/arcconf_v1_8_21375_zip.php HP Smart Array Controllers File Name: hpacucli-9.40-12.0.x86_64.rpm Download URL: http://downloads.linux.hpe.com/repo/spp/2013.02.0_supspp_rhel6.4_x86_64/hpacucli-9.40-12.0.x86_64.rpm HP Smart Array Controllers (Gen8+) File Name: hpssacli-2.30-6.0.x86_64.rpm Download URL: http://downloads.linux.hpe.com/SDR/repo/spp/2015.10.0_supspp_rhel7.2_x86_64/hpssacli-2.30-6.0.x86_64.rpm Areca RAID Controllers File Name: linuxcli_V1.15.8_180529.zip Download URL: http://www.areca.us/support/s_linux/driver/cli/linuxcli_V1.15.8_180529.zip 3ware SATA/SAS RAID Controllers File Name: 3DM2_CLI-linux_10-2-2-1_9-5-5-1.zip Download URL: http://docs.avagotech.com/docs/12353043 ===== Установка ===== {{ :wiki:storage:megacli:megacli.tar |}} [[wiki:storage:megacli:install_alt_linux|Установка MegaCLI на Alt Linux p10]] ===== Вывод информации ===== Для создания RAID группы необходимо выяснить параметры адаптера и дисков, для этого необходимо: **Получить номер адаптера** megacli Adpallinfo -aall | grep '^Adapter' **Получить адрес диска** megacli -PDlist -aall | grep -e '^Enclosure Device ID:' -e '^Slot Number:' -e 'Firmware state' **Информация о состоянии RAID** megacli -LDInfo -Lall -aALL **Проверка состояния батареи** megacli -AdpBbuCmd -aALL **Информация по корзине** megacli -EncInfo -aALL **Проверка статуса ребилда** megacli -PDRbld -ShowProg -PhysDrv[32:3] -a0 ===== Управление конфигурацией ===== ==== Импорт дисков с другого контроллера ==== megacli -CfgForeign -Import -a0 ==== Очистка конфигурации ==== Перед настройкой массива, возможно, потребуется удалить использованную ранее конфигурацию. Для того чтобы просто удалить логические устройства вы можете использовать CfgLdDel. megacli -CfgLdDel -Lall -force -aAll megacli -CfgClr -Force -aAll megacli -CfgForeign -Clear -A0 Если присутствуют JBOD диски, то перед тем как очистить конфигурацию контроллера необходимо их удалить командой: megacli -CfgLDDel -L0 -force -a0 ,где L0 номер диска ==== Резервное копирование конфигурации ==== Для сохранения настроек контроллера и всех массивов выполните команду: megacli -CfgSave -f raidcfg.txt -a0 Для восстановления настроек контроллера используйте следующую команду: megacli -CfgRestore -f raidcfg.txt -a0 ===== Управление RAID группами ===== ==== Создание новой RAID группы ==== === RAID0 === Режим создания RAID0 (псевдо JBOD) на каждом отдельном диске для использования программного RAID массива на сервере. megacli -CfgEachDskRaid0 WB RA Direct CachedBadBBU -a0 === RAID1 === megacli -CfgLdAdd -r1 [21:0,21:1] WB RA Direct NoCachedBadBBU -a0 Данный пример создает **RAID1** на 0-м адаптере из списка дисков. === RAID5 === megacli -CfgLdAdd -r5 [21:0,21:1,21:2,21:3] WB RA Direct NoCachedBadBBU -a0 Данный пример создает **RAID5** на 0-м адаптере из списка дисков. === RAID10 === megacli -CfgSpanAdd -r10 -Array0[252:0,252:2] Array1[252:1,252:3] WB ADRA Direct NoCachedBadBBU -strpsz 1024 -a0 В данном примере созается RAID10 из четырех дисков с размером блока 1МБ , включается режим кэширования WriteBack при наличии батареи, адаптивное упреждающее чтение. ==== Расширение RAID группы ==== Пример добавления диска в RAID5: megacli -LDRecon -Start -r5 -Add -PhysDrv[21:5] -L0 -a0 ==== Создание логических томов ==== megacli -CfgSpanAdd -r10 -Array0[32:0,32:1] Array1[32:2,32:3] WB RA Direct NoCachedBadBBU -sz300000 -a0 , где -sz300000 размер раздела в Mb ==== Верификация массива и проверка на ошибки (patrol read)==== megacli -AdpPR -Start -aALL - запуск верификации megacli -AdpPR -Stop -aALL - остановка верификации megacli -AdpPR -Info -aALL - проверка состояния ====Редактирование boot order==== megacli -AdpBootDrive -get -a0 megacli -AdpBootDrive -set -L0 -a0 ===== Управление накопителями ===== ==== Проверка S.M.A.R.T ==== //узнаем номер жесткого диска в корзине// for i in `megacli -PDlist -aall | grep -e 'Device Id' | sed -s 's/Device Id: //g'`; do echo Device ID=$i;smartctl -a /dev/sda -d megaraid,$i|grep -E 'Serial|Product|Status:|defect list|error count';done; //проверяем S.M.A.R.T диска// smartctl -a /dev/sda -d sat+megaraid,28 - для sata дисков smartctl -a /dev/sda -d megaraid,28 - для sas дисков ,где 28 - номер жесткого диска (Device Id) Далее после выявления сбойного диска, используя ранее полученные данные Enclosure Device ID: и Slot Number: мы можем подсветить сбойный диск светодиодом при помощи команды -PDLocate описанной выше. ==== Управление Hot Spare ==== megacli -PDHSP -Set -PhysDrv [12:6] -a0 - добавление диска megacli -PDHSP -Rmv -PhysDrv [12:6] -a0 - удаление диска ==== Локация диска в корзине ==== чтобы физически подсветить неисправный диск на фронт-панели сервера megacli -PDLocate -start -PhysDrv [12:6] -aAll - Включить светодиод на HDD megacli -PDLocate -stop -PhysDrv [12:6] -aAll - Отключить светодиод на HDD ,где [12:6] - это 12 - Enclosure Device ID 6 - Slot Number ===== Управление кэшированием ===== === Кэш дисков === **Включение собственного кэша накопителей** megacli -LDSetProp EnDskCache -LAll -aAll **Отключение собственного кэша накопителей** megacli -LDSetProp DisDskCache -LAll -aAll === Кэш контроллера === == Кэширование записи == **Включение режима WriteBack ((Запись данных производится в кэш. Запись же в основную память производится позже (при вытеснении или по истечению времени), группируя в одной операции несколько операций записи в соседние ячейки. Очевидно, что этот тип кэширования существенно ускоряет скорость записи данных на диск, однако имеет несколько меньшую надежность с точки зрения записи данных.)) (кэширование записи)** megacli -LDSetProp WB -LALL -aALL **Включение кэширования без батареи** megacli -LDSetProp CachedBadBBU -LALL -aALL **Категорически не рекомендуется включать кэш при отсутствии батареи на RAID контроллере, так как при аварийном отключении питания возможна потеря данных влекущая к неработоспособности сервера!** **Отключение кэширования без батареи** megacli -LDSetProp NoCachedBadBBU -LALL -aALL == Кэширование чтения == **Включение режима WriteThrough ((Запись производится непосредственно в основную память и дублируется в кэш. Такой тип кэширования не ускоряет запись данных на диск (но и не замедляет), но существенно увеличивает скорость чтения данных, которые можно взять из кэша. Этот тип кэша безопасен с точки зрения надежности данных и дает однозначный выигрыш в производительности)) (кэширование чтения)** megacli -LDSetProp WT -LALL -aALL **Включение режима Adaptive ReadAhead** megacli -LDSetProp ADRA -LALL -aALL **Включение режима ReadAhead** При отсутствии функционала адаптивного упреждающего чтения необходимо выполнить команду для включения традиционного упреждающего чтения: megacli -LDSetProp RA -LALL -aALL ===== Обнолвление микрокода ===== megacli -adpfwflash -f mr2108fw.rom -a0