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

Обновлено 07.08.2016

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

Автор - Сёмин Иван

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

  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
    сработает ли? не нагнется ли массив?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *