Linux: Работа с RAID контроллером от HP

HP-Smart-Array-P410-RAID-Controller-Card-462919-001-wSFF-8087-mini_SAS-Battery-291402637154-4

Небольшая инструкцию по мониторингу и настройке Raid массива на Raid контроллерах HP под CentOS 6.7.

При наличии необходимых навыков эта инструкция подойдет под любой другой дистрибутив Linux.

1) Для начала убедимся, что у нас есть HP контроллер:

Смотрим в разрезе устройств на шине:

# lspci | grep -i RAID
06:00.0 RAID bus controller: Hewlett-Packard Company Smart Array G6 controllers (rev 01)

Устройств при загрузке:

# dmesg | grep -i RAID
dracut: rd_NO_DM: removing DM RAID activation
dracut: rd_NO_MD: removing MD RAID activation
hpsa 0000:06:00.0: RAID              device c4b3t0l0 added.
scsi 4:3:0:0: RAID              HP       P410             3.66 PQ: 0 ANSI: 5

Или проверяем наличие символьного устройства hpilo.

Стоит уточнить, что на нескольких серверах, несмотря на наличие контроллера, символьного устройства не было.

#cat /proc/devices | grep hp
250 hpilo

1а) Более длинными способами, можно получить похожую картину:

Через smartctl:

# smartctl -i /dev/sda
smartctl 5.43 2012-06-30 r3573 [x86_64-linux-2.6.32-573.18.1.el6.x86_64] (local build)
Copyright (C) 2002-12 by Bruce Allen, http://smartmontools.sourceforge.net

Vendor:               HP
Product:              LOGICAL VOLUME
Revision:             3.66
User Capacity:        1,499,830,990,848 bytes [1.49 TB]
Logical block size:   512 bytes
Logical Unit id:      0x600508b1001851395358343048380c00
Serial number:        PACCR9SX4205
Device type:          disk
Local Time is:        Thu Mar  3 14:27:52 2016 MSK
Device does not support SMART

Через lshw:

# lshw -c disk
  *-disk:0
       description: SCSI Disk
       product: LOGICAL VOLUME
       vendor: HP
       physical id: 0.0.0
       bus info: scsi@4:0.0.0
       logical name: /dev/sda
       version: 3.66
       serial: PACCR9SX4205
       size: 1396GiB (1499GB)
       capabilities: 15000rpm partitioned partitioned:dos
       configuration: ansiversion=5 logicalsectorsize=512 sectorsize=512 signature=0004650e
  *-disk:1
       description: SCSI Disk
       product: LOGICAL VOLUME
       vendor: HP
       physical id: 0.0.1
       bus info: scsi@4:0.0.1
       logical name: /dev/sdb
       version: 3.66
       serial: PACCR9SX4205
       size: 1117GiB (1200GB)
       capabilities: 15000rpm partitioned partitioned:dos
       configuration: ansiversion=5 logicalsectorsize=512 sectorsize=512 signature=b294fbcd

2) Устанавливаем утилиту hpacucli.

Подключаем репозитарий HP:

Версию и разрядность системы необходимо подставить самостоятельно или написать общий шаблон.

cat spp.repo

name=Service Pack for ProLiant
baseurl=http://downloads.linux.hpe.com/repo/spp/rhel/6Server/x86_64/current/
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/GPG-KEY-ServicePackforProLiant
# yum install hpasmcli

Как вариант ставим RPM пакет HP, который соответствует вашей системе:

В моем случае:

rpm -ivh http://downloads.linux.hpe.com/repo/spp/rhel/6Server/x86_64/current/hpacucli-9.40-12.0.x86_64.rpm

warning: hpacucli-9.40-12.0.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 2689b887: NOKEY
Preparing...                ########################################### [100%]
   1:hpacucli               ########################################### [100%]

DOWNGRADE NOTE: To downgrade this application to any version prior to 9.10.x.x, the current RPM must be manually uninstalled using the "rpm -e" command before any prior versions can be installed.

LOCKING NOTE: The locking mechanism starting with versions 9.10.X.X, are not compatible with prior versions of the applications. Therefore, mixing older and newer versions of the various applications (ACU, HPACUCLI, HPACUSCRIPTING) is not recommended.

3) Начало работа с hpacucli.

Проверяем статус контроллера:

Команда для проверки hpacucli controller all show status

Нормальное состояние контроллера должно отображаться так:
# hpacucli controller all show status
Smart Array P410 in Slot 1
   Controller Status: OK
   Cache Status: OK
С чем я сталкивался:
Отсутствие «Cache Status» говорит об отсутствии батареи у кеша.

В этом состоянии:
— по неподтвержденным данным замедленной работой контроллера, по сравнению с присутствием батареи;
— невозможностью расширения массива на лету, путем добавления дисков и т.п.

Error: This operation is not supported with the current configuration. Use the
       "show" command on devices to show additional details about the
       configuration.
Reason: Transformation size zero
Батарея есть, но подлежит замене

Примерно тоже самое, что выше, но также есть риск потери данных кеша при внезапном отключении питания.
Ошибка выглядит так:

Smart Array P410 in Slot 1
   Controller Status: OK
   Cache Status: Temporarily Disabled
   Battery/Capacitor Status: Failed (Replace Batteries/Capacitors)

2016-03-02 11-00-48

2016-03-02 11-04-24

2016-03-02 11-04-30

Пора заменить микрокод контроллера!

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

Smart Array P410 in Slot 1

CACHE STATUS PROBLEM DETECTED: The controller is disabled because the cache
                               module is not attached. Please re-attach the
                               cache module to re-enable the controller.

Процедура обновления достаточно простая, но как обычно существуют стандартные риски при обновлении любых рейд контроллеров и это тема для отдельной статьи.

Заинтересованным смотреть с Firmware CD Supplemental Update Smart Array P212, P410, P410i, P411, P712m, and P812. Обновление прошло на лету, изменения применяются после перезагрузки.

Это же обновление лечит появление ошибок вида:

hpsa 0000:06:00.0: CDB 2a000d407ca800000800000000000000 : hardware error

Перед обновлением собираем диагностическую информацию:

Данные будут доступны в «/tmp/diag_log.txt»

# hpssacli ctrl slot=1 diag file=/tmp/diag_log.txt
   Generating diagnostic report...done

А также текущую конфигурацию контроллера:

# hpssacli ctrl all show config

Smart Array P410 in Slot 1                (sn: PACCR9SX4205  )

   Port Name: 1I
   Port Name: 2I

   DL18xG6BP        at Port 1I, Box 1, OK
   array A (SAS, Unused Space: 965488  MB)


      logicaldrive 1 (1.4 TB, RAID 5, Transforming, 49.22% complete)

      physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 300 GB, OK)
      physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 300 GB, OK)
      physicaldrive 1I:1:3 (port 1I:box 1:bay 3, SAS, 300 GB, OK)
      physicaldrive 1I:1:4 (port 1I:box 1:bay 4, SAS, 300 GB, OK)
      physicaldrive 1I:1:5 (port 1I:box 1:bay 5, SAS, 300 GB, OK)
      physicaldrive 1I:1:6 (port 1I:box 1:bay 6, SAS, 300 GB, OK)
      physicaldrive 1I:1:7 (port 1I:box 1:bay 7, SAS, 300 GB, OK)
      physicaldrive 1I:1:8 (port 1I:box 1:bay 8, SAS, 300 GB, OK)
      physicaldrive 1I:1:9 (port 1I:box 1:bay 9, SAS, 300 GB, OK)

   array B (SAS, Unused Space: 0  MB)


      logicaldrive 2 (1.1 TB, RAID 5, OK)

      physicaldrive 1I:1:10 (port 1I:box 1:bay 10, SAS, 600 GB, OK)
      physicaldrive 1I:1:11 (port 1I:box 1:bay 11, SAS, 600 GB, OK)
      physicaldrive 1I:1:12 (port 1I:box 1:bay 12, SAS, 600 GB, OK)

   Enclosure SEP (Vendor ID HP, Model DL18xG6BP) 248  (WWID: 50001C1071540013, Port: 1I, Box: 1)

   Expander 250  (WWID: 50001C1071540000, Port: 1I, Box: 1)

   SEP (Vendor ID PMCSIERA, Model  SRC 8x6G) 249  (WWID: 50014380042FABEF)

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

4) Настройка RAID с hpacucli.

Просмотр статусов логических дисков

#hpssacli controller slot=1 logicaldrive all show status

   logicaldrive 1 (1.4 TB, 5): OK
   logicaldrive 2 (1.6 TB, 5): OK

Если логический диск в «работе» статус это покажет.

Результат добавления дисков в массив:

#hpssacli ctrl slot=1 ld 1 add drives=1I:1:7,1I:1:8,,1I:1:9
#hpssacli controller slot=1 logicaldrive all show status

   logicaldrive 1 (1.4 TB, 5): Transforming, 49.13% complete
   logicaldrive 2 (1.1 TB, 5): OK

Просмотр статусов физических дисков

Один из дисков в режиме «скоро умрет».

#hpssacli controller slot=1 physicaldrive all show status
   physicaldrive 1I:1:1 (port 1I:box 1:bay 1, 300 GB): OK
   physicaldrive 1I:1:2 (port 1I:box 1:bay 2, 300 GB): OK
   physicaldrive 1I:1:3 (port 1I:box 1:bay 3, 300 GB): OK
   physicaldrive 1I:1:4 (port 1I:box 1:bay 4, 300 GB): OK
   physicaldrive 1I:1:5 (port 1I:box 1:bay 5, 300 GB): OK
   physicaldrive 1I:1:6 (port 1I:box 1:bay 6, 300 GB): OK
   physicaldrive 1I:1:9 (port 1I:box 1:bay 9, 600 GB): OK
   physicaldrive 1I:1:10 (port 1I:box 1:bay 10, 600 GB): Predictive Failure
   physicaldrive 1I:1:11 (port 1I:box 1:bay 11, 600 GB): OK
   physicaldrive 1I:1:12 (port 1I:box 1:bay 12, 600 GB): OK
   physicaldrive 1I:1:7 (port 1I:box 1:bay 7, 300 GB): OK
   physicaldrive 1I:1:8 (port 1I:box 1:bay 8, 300 GB): OK

Можем получить более детальную информацию:

#hpacucli ctrl all show config detail | more

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

# Создание логического диска с RAID 0 включающего один физический диск
hpacucli ctrl slot=1 create type=ld drives=1I:1:10 raid=0
# Создание логического диска с RAID 1 с двух физических дисков
hpacucli ctrl slot=1 create type=ld drives=1I:1:10,1I:1:11 size=300 raid=1
# Создание логического диска с RAID 5 с тремя физическими дисками
hpacucli ctrl slot=1 create type=ld drives=1I:1:10,1I:1:11,1I:1:12raid=5

Добавление дополнительного физического диска к логическому

hpacucli ctrl slot=1 ld 1 add drives=1I:1:10

Добавить запасной диск:

hpacucli ctrl slot=0 array all add spares=1I:1:10

Увеличение размера логического диска до указанного в size, после добавление нового физического

hpacucli ctrl slot=1 ld 1 modify size=500 forced

В моем случае ругнется и даст подсказку — нельзя делать диск меньше чес он сейчас.

Error: "size=500" is not a valid option for logicaldrive 1
Available options are:
   Max: 2288560 (Units in MB)
   Min: 1430350 (Units in MB)
   MaxMBR: Max. for MBR Partition Table (2097152 MB = 2 TB)

Свободное место можно взять из детального вывода «hpacucli ctrl all show config detail».
У меня после добавления свободно 0,9Tb

 Array: A
      Interface Type: SAS
      Unused Space: 965488  MB
      Status: OK
      Array Type: Data

Работа с внутренним кешем

#Изменить пропорции кеширования:
hpssacli ctrl slot=1 modify cacheratio=100/0
# Выключить/включить кэш
hpacucli ctrl slot=1 modify dwc=disable
hpacucli ctrl slot=1 modify dwc=enable

Источники:
http://demi4.com/centos-i-aparatnyiy-reyd-hp/
http://sysadm.pp.ua/linux/monitoring-systems/hpraid-monitoring.html

Вы можете оставить комментарий ниже.