Hetzner - DokuWiki

LSI RAID Controller/ru

Inhaltsverzeichnis

RAID-контроллер LSI

Созданное LSI ПО для администрирования RAID-контроллера вы можете скачать здесь:

http://download.hetzner.de/tools/LSI/
  • Данные для доступа к этому сайту указанны в email об установке вашего Root сервера.
  • Утилита megacli служит для управления контроллером из командной строки. (Обратите внимание: установка RPM происходит в /opt/MegaRAID/MegaCli/)
  • Утилита MegaRAID Storage Manager (MSM) предоставляет графический интерфейс для управления контроллером.
  • Другие утилиты и драйверы можно найти на сайте LSI.

Проверка состояния Hardware-RAID контроллера

Для проверки статуса LSI RAID-контроллера должна быть установлена утилита командной строки megacli. В Rescue-системе она установлена по умолчанию. Состояние RAID можно получить следующей командой (отобразить все логические устройства всех контроллеров)

megacli -LDInfo -Lall -Aall

Пример вывода RAID-1:

Adapter 0 -- Virtual Drive Information:
Virtual Disk: 0 (Target Id: 0)
Name:
RAID Level: Primary-1, Secondary-0, RAID Level Qualifier-0
Size:697.560 GB
State: Optimal
Stripe Size: 64 KB
Number Of Drives:2
Span Depth:1
Default Cache Policy: WriteBack, ReadAhead, Cached, Write Cache OK if Bad BBU
Current Cache Policy: WriteBack, ReadAhead, Cached, Write Cache OK if Bad BBU
Access Policy: Read/Write
Disk Cache Policy: Enabled
Encryption Type: None

Exit Code: 0x00

Состояние жестких дисков можно получить следующей командой:

megacli -PDList -Aall

Так как при этом выводится масса дополнительной информации, рекомендуется отфильтровать вывод. Например так:

megacli -PDList -aAll | egrep "Enclosure Device ID:|Slot Number:|Inquiry Data:|Error Count:|state"

Создание RAID-массива

Перед настройкой массива, возможно, потребуется удалить использованную ранее конфигурацию. Для того чтобы просто удалить логические устройства вы можете использовать CfgLdDel:

megacli -CfgLdDel -Lall -aAll

Для того чтобы удалить всё (в том числе, например, поведение кэша) используйте «Очистку конфигурации»:

megacli -CfgClr -aAll

Доступные для использования устройства должны иметь статус «Unconfigured (good)» (см. выше). Если они со статусом «Unconfigured (bad)», то это можно исправить командой:

megacli -PDMakeGood -PhysDrv[<Enclosure#>:<Slot#>] -a0

Синтаксис:

megacli -CfgLdAdd -r<RAID#> [E0:S0,E1:S1,...] [WT|WB] [NORA|RA] [Direct|Cached] -sz<Size> [-sz<Size>]

Настройка RAID-0, 1 или 5. Вместо «r0» введите соответственно «r1» или «r5» (диски в расположении (Enclosure) 252, на портах 0 и 1, WriteBack включен, ReadCache адаптивный, Cache также включен без BBU)

megacli -CfgLdAdd -r1 [252:0,252:1] WB RA Direct CachedBadBBU -a0

Настройка RAID-0, 1 или 5 размером 20ГБ

megacli -CfgLdAdd -r1 [252:0,252:1] WB RA Direct CachedBadBBU -sz10GB -a0

Настройка RAID-10.

megacli -CfgSpanAdd -r10 -Array0[252:0,252:1] -Array1[252:2,252:3] WB RA Direct CachedBadBBU -a0

Расширение существующего массива

После установки дополнительного диска потребуется изменить настройки соответствующего массива. Вот пример добавления диска в RAID5:

megacli -LDRecon -Start -r5 -Add -PhysDrv[252:3] -L0 -a0

Использование дисков как JBOD

LSI MegaRAID 9260 не поддерживает режим JBOD, предоставляющий прямой доступ к дискам. Тем не менее, можно создать RAID-0 на каждом диске:

megacli -CfgEachDskRaid0 WB RA Direct CachedBadBBU -a0

Настройка диска горячего резерва (hot spare)

Выберите неиспользуемый («unconfigured good») диск из меню «Drives» и кликните на «Properties». Здесь можно настроить диски как горячий резерв и для конкретного массива и глобально для всех массивов. Также это можно сделать через megacli

  • как глобальный горячий резерв:
megacli -PDHSP -Set -PhysDrv[252:2] -a0
  • как горячий резерв для массива Array0:
megacli -PDHSP -Set -Dedicated -Array0 -PhysDrv[252:2] -a0

Удалить статус горячей замены:

megacli -PDHSP  -Rmv -PhysDrv[252:2] -a0

Создание загрузочного массива

Если массив не загрузочный, то его можно опросить и создать логический диск:

root@rescue ~ # megacli -AdpBootDrive -get -a0

Adapter 0: No Virtual drive or Physical Drive is configured as boot drive.

Exit Code: 0x00
root@rescue ~ # megacli -AdpBootDrive -set -L0 -a0

Boot Virtual Drive is set to #0 (target id #0) on Adapter 0

Exit Code: 0x00

Создание резервной копии и восстановление конфигурации контроллера

Для сохранения настроек контроллера и всех массивов выполните команду:

# megacli -CfgSave -f raidcfg.txt -a0

Для восстановления настроек контроллера используйте следующую команду:

root@rescue ~ # megacli -CfgRestore -f raidcfg.txt -a0

Замена диска в массиве, если rebuild не начался автоматически

Статус нового диска должен быть «Unconfigured (good)». Это можно проверить с помощью PDList. Если статус диска «Unconfigured (bad)», то его надо сначала сделать пригодным для использования как показано ниже:

root@rescue ~ # megacli -PDList -a0 | grep Firmware
Firmware state: Online, Spun Up
Device Firmware Level: CC45
Firmware state: Online, Spun Up
Device Firmware Level: CC45
Firmware state: Unconfigured(bad), Spun Up
Device Firmware Level: CC45
Firmware state: Online, Spun Up
Device Firmware Level: CC45
root@rescue ~ # megacli -CfgForeign -Scan -a0

There are 1 foreign configuration(s) on controller 0.

Exit Code: 0x00

root@rescue ~ # megacli -CfgForeign -Clear -a0

Foreign configuration 0 is cleared on controller 0.

Exit Code: 0x00

root@rescue ~ # megacli -PDMakeGood -PhysDrv [245:3] -a0

Если диск «good», то им можно заменить отсутствующий диск. Для этого надо указать массив и позицию, где надо произвести замену. Эти значения можно получить, например, из megacli -CfgDsply -a0. Если диск отсутствует в массиве, запись «Physical Disk:» будет показана, но без дополнительно информации. В следующем примере четвёртый диск первого массива (Array0) заменяется диком из Enclosure 245 Slot 3 ("PhysDrv[245:3]"):

root@rescue ~ # megacli -PdReplaceMissing -PhysDrv[245:3] -array0 -row4 -a0

Adapter: 0: Missing PD at Array 0, Row 4 is replaced.

Exit Code: 0x00
root@rescue ~ # megacli -PDRbld -Start -PhysDrv[245:3] -a0

Started rebuild progress on device(Encl-245 Slot-3)

Exit Code: 0x00
root@rescue ~ # megacli -PDRbld -ShowProg -PhysDrv [245:3] -aAll

Rebuild Progress on Device at Enclosure 245, Slot 3 Completed 1% in 0 Minutes.

Доступ к данным S.M.A.R.T. для дисков в RAID

Вы можете использовать smartmontools для доступа к физическим дискам подключенным к RAID-контроллеру. Сначала надо определить номер устройства (Device Id) с помощью megacli:

# megacli -pdlist -a0| grep 'Device Id'
Device Id: 4
Device Id: 5

После этого можно указать его в опции «megaraid», например так:

smartctl -d sat+megaraid,4 -a /dev/sda

В зависимости от используемой операционной системы может потребоваться обновить smartmontools или ядро операционной системы.

Пустая конфигурация контроллера после перезагрузки сервера

В редких случаях созданная при первичной настройке конфигурация массива не сохраняется при перезагрузке сервера.

Для того чтобы избежать этого конфигурацию следует создать два раза. Пример для конфигурации RAID-1:

Создание массива

megacli -CfgLdAdd -r1 [252:0,252:1] WB RA Direct CachedBadBBU -a0

Полное удаление конфигурации

megacli -CfgLdDel -Lall -aAll

Повторное создание массива

megacli -CfgLdAdd -r1 [252:0,252:1] WB RA Direct CachedBadBBU -a0

Обновление прошивки LSI

Выпускаемое производителем контроллера обновление для встроенного программного обеспечения (firmware или прошивка) поддерживает контроллер в актуальном состоянии: исправляет ошибки и добавляет новые возможности.

Для предотвращения потенциальной потери данных мы рекомендуем перед обновлением прошивки делать резервную копию данных и конфигурации контроллера.

Информация о копировании и восстановлении конфигурации контроллера содержится выше.

1. Получение модели контроллера и версии прошивки

Для того чтобы прочитать информацию с контроллера следует установить утилиту командной строки megacli. Она уже установлена в Rescue System.

megacli -AdpAllInfo -aAll

Пример вывода команды:

Versions
================
Product Name : LSI MegaRAID SAS 9260-4i
Serial No: SV52117135
FW Package Build: 12.15.0-0205

2. Обновление прошивки RAID-контроллера

В зависимости от текущей версии прошивки может потребоваться промежуточное обновление (только для версий старее 12.12.0-0090).

Если текущая версия прошивки ниже версии 12.12.0-0090, пожалуйста, произведите промежуточное обновление до версии 12.12.0-0090. Прошивку этой версии можно скачать на:

http://mirror.hetzner.de/tools/LSI/firmware/

Сохраните файл прошивки на сервер и выполните команду обновления, указав имя файла прошивки. Ниже приведён пример команды для обновления на версию 12.12.0-0090:

megacli -adpfwflash -f mr12.12.0-0090.rom -a0

Если промежуточное обновление не требуется, то можно сразу скачать новейшую версию прошивки RAID-контроллера на сайте производителя

http://www.avagotech.com/support/download-search

Производитель контроллера поставляет прошивку в zip-архиве. Кроме самой прошивки в этом архиве содержится текстовый файл с описанием изменений в прошивке и с командой, которую следует выполнить для обновление прошивки — перед тем как применять обновление прошивки, используя команду, описанную выше, убедитесь, что синтаксис команды не поменялся.

3. Проверка обновления RAID-контроллера

В конце можно проверить установленную версию прошивки

megacli -AdpAllInfo -aAll

Пример вывода команды:

Versions
================
Product Name : LSI MegaRAID SAS 9260-4i
Serial No: SV52117135
FW Package Build: 12.15.0-0205


© 2018. Hetzner Online GmbH. Alle Rechte vorbehalten.