StorCLI команды управления RAID контроллером LSI в VMware ESXI 5.5

StorCLI команды управления RAID контроллером LSI в VMware ESXI 5.5

Всем привет сегодня после того как получилось подружить HP ProLiant DL380 G7 и LSI 9361 8i, хочется разобрать возможность управления RAID контроллером LSI в VMware ESXI 5.5 через командную строку, что на мой взгляд не так удобно как в случае с графическим интерфейсом, но имеет и свои плюсы, более быстрое в случае когда вы набили руку.

Напомню что графический способ подразумевал установку утилиты MSM, почитать это можно в статье как установить MegaRAID SMIS Providers на VMware ESXi 5.5. Для того чтобы вы могли воспользоваться функционалом StorCLI для lsi raid, вам нужно его поставить, ранее я рассказывал Как установить StorCLI в Vmware ESXI 5.5, советую ознакомится. И так приступимс.

storcli команды

Общие команды storcli show

Первым делом переходим в каталог расположения утилиты делается это командой

cd /opt/lsi/storcli

Посмотреть версию storcli

./storcli -v

либо если не переходить в каталог с программой

/opt/lsi/storcli/storcli -v

Посмотреть версию storcli

Получить справочную информацию по всем командам утилиты storcli

./storcli -help

Получить справочную информацию

Посмотреть подсоединенные контроллеры

./storcli show ctrlcount

Нашелся один RAID контроллер.

Посмотреть подсоединенные контроллеры

Для более детальной информации вводим следующую команду.

./storcli show all

Как видите тут выводится модель raid контроллера, у меня это Avago MegaRAID SAS 9361-8i, количество портов.

Посмотреть детальные настройки raid контроллера

Так как я выяснил, что мой контроллер идет под номером 0, то в дальнейшем он будет выступать под видом /c0.

Посмотрим теперь реально всю информацию о данном RAID контроллере, для этого воспользуемся командой storcli

./storcli /c0 show all

В итоге получаем вот такую простыню, как можете заметить информации реально вагон, для примера версии всех прошивок, всех утилит, статусы компонентов и количество ошибок.

Generating detailed summary of the adapter, it may take a while to complete.

Controller = 0
Status = Success
Description = None
Basics :
======
Controller = 0
Model = AVAGO MegaRAID SAS 9361-8i
Serial Number = SV53939929
Current Controller Date/Time = 12/11/2015, 10:33:16
Current System Date/time = 12/11/2015, 09:32:31
SAS Address = 500605b00ace58d0
PCI Address = 00:0b:00:00
Mfg Date = 09/20/15
Rework Date = 00/00/00
Revision No = 11A
Version :
=======
Firmware Package Build = 24.10.0-0020
Firmware Version = 4.600.00-4907
CPLD Version = 26747-01A
Bios Version = 6.28.04.0_4.17.08.00_0x06110200
Ctrl-R Version = 5.13-1101
Preboot CLI Version = 01.07-05:#%0000
NVDATA Version = 3.1508.00-0009
Boot Block Version = 3.07.00.00-0003
Driver Name = megaraid_perc9
Driver Version = 6.901.55.00.1vmw
Bus :
===
Vendor Id = 0x1000
Device Id = 0x5D
SubVendor Id = 0x1000
SubDevice Id = 0x9361
Host Interface = PCI-E
Device Interface = SAS-12G
Bus Number = 11
Device Number = 0
Function Number = 0
Pending Images in Flash :
--------------------------------------------------
Adv S/W Opt Time Remaining Mode
--------------------------------------------------
MegaRAID FastPath Unlimited -
MegaRAID CacheCade Pro 2.0 18 days 2 hours -
MegaRAID SafeStore 18 days 2 hours -
MegaRAID RAID6 Unlimited -
MegaRAID RAID5 Unlimited -
--------------------------------------------------
Virtual Drives = 2

VD LIST :
=======

-----------------------------------------------------------------
DG/VD TYPE State Access Consist Cache Cac sCC Size Name
-----------------------------------------------------------------
0/0 RAID1 Optl RW No RWTD - OFF 558.406 GB system
1/1 RAID5 Optl RW No RWTD - OFF 4.545 TB VD_1
-----------------------------------------------------------------

Cac=CacheCade|Rec=Recovery|OfLn=OffLine|Pdgd=Partially Degraded|dgrd=Degraded
Optl=Optimal|RO=Read Only|RW=Read Write|HD=Hidden|B=Blocked|Consist=Consistent|
R=Read Ahead Always|NR=No Read Ahead|WB=WriteBack|
AWB=Always WriteBack|WT=WriteThrough|C=Cached IO|D=Direct IO|sCC=Scheduled
Check Consistency

Physical Drives = 8

PD LIST :
=======

--------------------------------------------------------------------------------
EID:Slt DID State DG Size Intf Med SED PI SeSz Model Sp
--------------------------------------------------------------------------------
252:0 16 Onln 1 931.0 GB SATA SSD N N 512B Samsung SSD 850 EVO 1TB U
252:1 17 Onln 1 931.0 GB SATA SSD N N 512B Samsung SSD 850 EVO 1TB U
252:2 11 Onln 1 931.0 GB SATA SSD N N 512B Samsung SSD 850 EVO 1TB U
252:3 12 Onln 1 931.0 GB SATA SSD N N 512B Samsung SSD 840 EVO 1TB U
252:4 8 Onln 0 558.406 GB SAS HDD N N 512B EG0600FBDBU U
252:5 9 Onln 0 558.406 GB SAS HDD N N 512B EG0600FBDBU U
252:6 15 Onln 1 931.0 GB SATA SSD N N 512B Samsung SSD 850 EVO 1TB U
252:7 10 Onln 1 931.0 GB SATA SSD N N 512B Samsung SSD 850 EVO 1TB U
--------------------------------------------------------------------------------

EID-Enclosure Device ID|Slt-Slot No.|DID-Device ID|DG-DriveGroup
DHS-Dedicated Hot Spare|UGood-Unconfigured Good|GHS-Global Hotspare
UBad-Unconfigured Bad|Onln-Online|Offln-Offline|Intf-Interface
Med-Media Type|SED-Self Encryptive Drive|PI-Protection Info
SeSz-Sector Size|Sp-Spun|U-Up|D-Down|T-Transition|F-Foreign
UGUnsp-Unsupported|UGShld-UnConfigured shielded|HSPShld-Hotspare shielded
CFShld-Configured shielded|Cpybck-CopyBack|CBShld-Copyback Shielded

Из полезного еще, можно посмотреть число virtual drive и физических дисков.

  • показывает количество групп дисков;
  • для каждой группы дисков - тип RAID, состояние, наличие фоновых задач, размер, использование кеша дисков, PI, SED, наличие свободного места, не всегда отрабатывает;
  • для каждого диска - номер группы дисков, номер в группе (Row), номер корзины и слота в корзине, идентификатор устройства (DID), состояние, наличие фоновых задач, размер, использование кеша дисков, интерфейс, носитель, размер сектора, модель, раскручен ли;
  • для каждого виртуального диска - номер группы дисков, тип RAID, состояние, тип доступа (RW), консистентность, тип кеширования, размер, имя;
  • для BBU - модель, состояние, температура, режим работы, дата изготовления, дата следующего тестирования

StorCLI команды

Интервал сброса кэша, по умолчанию стоит 4 секунды

./storcli /c0 show cacheflushint

Интервал сброса кэша

Если происходит проверка консистентности и если находится ошибка, должен ли контроллер прекратить ее или нет.

./storcli /c0 show abortcconerror

происходит проверка консистентности

Так и не понял для чего данная команда Use Disk Activity For Locate, типа использовать дисковую активность для локализации диска.

./storcli /c0 show activityforlocate

StorCLI команды управления

Посмотреть включены ли alarm

./storcli /c0 show alarm

Узнать количество плохих секторов badblocks

./storcli /c0 show badblocks

Узнать статус включены ли предупреждения от BBU батарейки

./storcli /c0 show batterywarning

Узнать приоритет фоновой инициализации, по умолчанию это значение 30 %, максимально 100, минимальное 0.

./storcli /c0 show bgirate

Задать поведение контроллера при ошибках во время загрузки

./storcli /c0 show bios

Задать поведение контроллера

Работа с Virtual Drive

Первым делом приведу команду которая покажет вам существующие virtual drive на вашем Raid контроллере.

./storcli /c0 /vall show

У меня это виртуальный диск на RAID1, размером 558 гб.

список virtual drive

Если добавите параметр all, то получите исчерпывающию информацию, из чего состоит данный Virtual Drive (EID дисков), размер stripe и многое еще.

список virtual drive-2

Далее нужно понять какие диски у нас есть, делается это командой

./storcli /c0 /eall /sall show

Вы получите список дисков на вашем сервере, если опять добавите параметр all, то информации будет в разы больше. Тут из полезного EID диска, его статус.

список дисков на сервере

Создаем Virtual Drive, сразу советую вам почитать про виды RAID и виды кэша контроллера LSI. Вводим команду

./storcli /c0 add vd type=r0 size=1024000 name=raid0 drives=252:0-1 strip=128 pdcache=off direct wb ra

В результате ее выполнения вы получите виртуальный диск размером 1тб raid0, размером strip 128 с выключенным кэшем записи на диске и режимами кэша Read ahead, Direct I/O, Write back.

Возможные параметры virtual drive

  • add vd > указываем что создается виртуальный диск
  • type > тип raid 0|1|5|6|00|10|50|60
  • size > размер указывается в мегабайтах, если поставить all, будет размечено все пространство.
  • name > любое имя на латинице
  • drives > список дисков
  • strip > размер страйпа возможны варианты 8|16|32|64|128|256|1024
  • pdcache > включение локального кэширования записи на дисках 0n/off
  • Политика ввода вывода direct > Direct I/O еще возможный вариант cached > Cached I/O
  • Политика записи wb >  Write back, wt >  Write through, awb > Always Write Back
  • spares > добавить диск горячей замены, не работает с raid0

Пример команды с диском горячей замены, где 252:3, диск в 3 слоте.

./storcli /c0 add vd type=r0 size=1024000 name=raid0 drives=252:0-1 strip=128 pdcache=off direct wb ra spares=252:3

Проверим теперь список виртуальных дисков. Как видите наш vd успешно добавлен.

Обновленный список virtual drive

  • ssdcaching > on|off режим CacheCade
  • emulationType > этот параметр задает как будет происходить эмуляция логического размера физического диска. Если выставить Default (0), то если в виртуальном диске будут диски 512E, то он их и будет считать 512E, если все диски 512N, то и они будут 512N, другими словами, все как есть так и будет. Если выставить Disabled (1), то vd всегда все будут считать как 512N, если у вас даже будет 512E формат дисков. Ну и Forced (2) показывает на virtual drive размер блока как 512E, если его даже нет. Более подробно про типы читайте в статье Advanced Format.
  • ds > Default|Auto|None|Max|MaxNoCache > режим энергосбережения
  • autobgi > on|off включение или выключение фоновых процессов.

Иницилизируем созданный virtual drive

./storcli /c0 /v1 start init 

Посмотреть процесс инициализации по всем сразу

./storcli /c0 /vall show init

Удалить virtual drive выполняется командой, где v1 номер vd.

./storcli /c0 /v1 del

Изменить настройки virtual drive

Очень важно уметь выполнять настройки на существующих виртуальных томах. И так у нас есть том 1 тб и режимами кэширования direct wb ra, размер stripe изменить уже не получиться, только удаление тома, а вот имя и режимами кэширования, да и расширение можно осуществить.

Изменим для начала имя текущего тома, напомню оно raid0, задаем команду и теперь оно будет new_raid0

./storcli /c0 /v1 set name=new_raid0

Изменить настройки virtual drive

Думаю тут понятна конструкция берете ./storcli /c0 /v1 set и задаете параметр который нужно поправить.

Возможные значения
  • storcli /cx/vx set accesspolicy=rw (чтение/запись)|ro только чтение|blocked блокировка|rmvblkd > rmvblkd - remove blocked
  • storcli /cx/vx set iopolicy=cached|direct > задать политику ввода/вывода
  • storcli /cx/vx set name=имя > смена имени
  • storcli /cx/vx set pdcache=on|off|default > работа с кешем записи на диске
  • storcli /cx/vx set rdcache=ra|nora > режим предварительного чтения
  • storcli /cx/vx set ssdcaching=on|off > CacheCade, ссылка выше
  • storcli /cx/vx set wrcache=wt|wb|awb > режим кеширования записи (awb - всегда кешировать запись)
  • storcli /cx/vx set emulationType=0|1|2 > полезно поиграться с дисками в эмуляции logical size, подробнее о Advanced Format (Default (0): при наличии в томе дисков 512E он видится как 512E. Если все диски — 512N, тогда том видится как 512N. Disabled (1): Том всегда видится как 512N несмотря на наличие дисков 512E. Forced (2): Том всегда видится как 512E даже при отсутствии дисков 512E)
  • storcli /cx/vx set ds=Default|Auto|None|Max|MaxNoCache > включение режима энергосбережения
  • storcli /cx/vx set autobgi=on|off. Включить/выключить фоновую инициализацию
  • storcli /cx/vx set pi=off # (что это?)
  • storcli /cx/vx set bootdrive={on|off}
  •  storcli /cx/vx set HostAccess=ExclusiveAccess|SharedAccess
  • storcli /cx/vx set pi=Off
  • storcli /cx/vx set bootdrive=<On|Off> сделать том загрузочным
  • storcli /cx/vx set hidden=On|Off > скрыть том
  • storcli /cx/vx set hoqrebuild=On|Off > включает/выключает главный диск в очереди на ребилд
  • storcli /cx/vx set cbsize=0|1|2 cbmode=0|1|2|3|4|7 > задает размер  Cache bypass (cbsize: 0 – 64k Cache bypass. 1 – 128k Cache bypass. 2 – 256k Cache bypass) (cbmode: 0 – Включение intelligent mode Cache bypass. 1 – Включение standard mode Cache bypass. 2 – Включение настраиваемого custom mode Cache bypass 1. 3 – Включение настраиваемого custom mode Cache bypass 2. 4 – Включение настраиваемого custom mode Cache bypass 3. 7 – Выключение Cache bypass.)
  • storcli /cx/vx start erase simple|normal|thorough|standard начать стирание
  • storcli /cx/vx stop eraseостановить стирание
  • storcli /cx/vx start migrate type=RAID{0|1|5|6} [option={add|remove} drives=корзина:слот{,...}] # RAID5 и 6 нельзя преобразовать в RAID1, преобразование raid.
  • storcli /cx/vx start cc [force] запуск проверки консистенции
  • storcli /cx/vx stop cc остановка проверки консистенции
  • storcli /cx/vx pause cc пауза проверки консистенции
  • storcli /cx/vx resume cc возобновление проверки консистенции
  • storcli /cx/vx suspend bgi пауза фоновой инициализации
  • storcli /cx/vx stop bgi остановка фоновой инициализации
  • storcli /cx/vx resume bgi возобновление фоновой инициализации
  • storcli /cx/vx del cachecade > удалить cachecade
  • storcli /cx/vx delete preservedcache [force] удалить данные, закешированные для исчезнувшего диска
  • storcli /cx/vx expand size=ГБ [expandarray] # увеличить виртуальный диск, expandarray - увеличить размер группы дисков после замены дисков на большие диски

увеличить виртуальный диск

  • storcli /cx/vx show BBMT # показать количество плохих блоков на логическом уровне с возможностью коррекции

Работа с CacheCade

Создаем CacheCade командой

./storcli /cx add vd cc type=r[0,1,10] drives=[EnclosureID:SlotID|:SlotID-SlotID|:SlotID,SlotID] WT|WB (assignvds=0,1,2)

пример

./storcli /c0 add vd cc type=r1 drives=252:2-3 WB

CacheCade активация/деактивация

./storcli /cx/[vx|vall] set ssdCaching=[on|off]

Пример

./storcli /c0/v1 set ssdCaching=on

удалить CacheCade device

./storcli /cx/vx del cc

Оцените статью
Настройка серверов windows и linux
Добавить комментарий

  1. Sasha Odarchuk

    Как узнать % ребилда ??

  2. Иван Семин автор

    ./storcli show all

  3. metall

    А как добавить в существующий vd новый диск?

  4. Иван Семин автор

    Вы имеете в виду размеченный vd?

  5. metall

    Именно, есть необходимость расширить существующий raid6 без разрушения массива. Возможно ли это?

  6. Иван Семин автор

    На контроллерах LSI есть такая возможность, вы можете добавить дополнительные диски в существующий RAID (http://pyatilistnik.org/kak-dobavit-disk-v-sushhestvuyushhiy-raid-na-kontrollere-lsi/), я такое проделывал через MSM, на сайте есть пример статьи, со storcli такого не делал ,но уверен, что там это можно сделать

  7. metall

    Благодарю! Если вдруг будет такой опыт с storcli, то добавьте в статью, пожалуйста! 🙂

  8. Иван Семин автор

    Ок, если не забуду. Еще забыл отметить, что во время расширения raid массива, все будет очень тормозить, учтите это.

  9. OlegusP

    добавить диск в рейд6 :
    ./storcli /c0/v0 start migrate type=raid6 option=add drives=4:3
    где drives — это EID:Slt доп. диска, посмотреть можно командой ./storcli /c0 show
    на пятнадцать примерно минут рейд задумается, а затем можно смотреть прогресс
    ./storcli /c0/v0 show migrate
    Лучше чтобы при этом никто не работал, так как система будет жутко тормозить и если кто-то будет работать, то миграция затянется на дни.
    VD Operation Progress% Status Estimated Time Left
    ——————————————————-
    0 Migrate 1 In progress 5 Hours 49 Minutes

  10. Иван Семин автор

    Да точно растянется на долгое время.

  11. Василий

    Скорее всего неверно указаны единицы измерения команды «expand», не ГБ а МБ

    ./storcli /c0 /v0 expand size=1700000
    Controller = 0
    Status = Success
    Description = expansion operation succeeded

    EXPANSION RESULT :
    ================

    ————————————————————————
    VD Size FreSpc ReqSize AbsUsrSz %FreSpc NewSize Status NoArrExp
    ————————————————————————
    0 1.031 TB 1.695 TB 1.621 TB 1.627 TB 96 2.660 TB — 1.695 TB
    ————————————————————————

    Size — Current VD size|FreSpc — Freespace available before expansion
    %FreSpc — Requested expansion size in % of available free space
    AbsUsrSz — User size rounded to nearest %

  12. jorel

    Добрый день.
    Есть контроллер 9631-4i вместе с ним стоит батарейка, в свойствах она и состояние — оптимальное.
    При создании рейда virtual drive в политике записи я ожидал увидеть пункт: Write Back BBU,но его нет. Может вы знаете это особенность контроллера или что-то не так? В данный момент я пытаюсь обновить прошивку через storcli (efi), может есть у вас какой-то?

  13. Иван Семин автор

    К сожалению, я не работал с данной моделью, могу посоветовать установить MSM или LSA для обновления через веб интерфейс.

  14. Васо

    Подскажите может была похожая проблема с storcli на esxi 6.0, при вводе любой команды storcli зависает. Команда ./storcli -v отвисла через 12 часов.

  15. Игорь

    День добрый!

    Подскажите плиз… У меня регистрируется ошибка:
    Controller ID: 0 Transient error detected while communicating with PD: Int. Port 0 — 3:1:6

    А я не могу понять с каким физическим диском эта ошибка связана…

  16. Иван Семин автор

    Можете выгрузить весь список файлов

  17. parallax

    как с помощью storcli добавить второй массив?
    спасибо

  18. Станислав

    Включите в статью пример для временного решения проблем с BBU до замены без потери производительности
    storcli64 /c0/v0 set cachedbadbbu=on

  19. Евгений

    Спасибо за статью! Очень выручила!
    Подскажите, пожалуйста, на сколько критично количество плохих блоков?
    Сейчас такая информация:
    Controller = 0
    Status = Failure
    Description = None

    Detailed Status :
    ===============

    ————————————————————-
    Ctrl Status Ctrl_Prop Value ErrMsg ErrCd
    ————————————————————-
    0 Failed Bad Block Count — BadBlockCount failed 2
    ————————————————————-

  20. Иван Семин автор

    Исходя из своего опыта, если диск начал крошиться, то его лучше менять сразу, так как он выходит из строя в течении нескольких недель. Например у меня были диски IBM и там критическое количество блоков было 20.

  21. Алексей

    Добрый день. Добавил в массив raid6 еще один диск. Хотел сделать хотспару, но ошибся, добавил именно в массив. В винде, в Управлении дисками, свободное место на массиве появилось, но размечать НЕ стал. Возможно ли, удалить лишний диск без потери данных и остановки массива? Диск перевел в состояние Unconfigured Drive, в MSM.

  22. Алексей

    В MSM я не нашел возможности удалить диск из массива. Если переделать пример выше под мой сценарий: ./storcli /c0/v0 start migrate type=raid6 option=del drives=32:7
    сработает ли? не нагнется ли массив?