Назад | Перейти на главную страницу

HP Smart Array P400i помечает исправный диск как неисправный. Что я могу с этим поделать?

У меня есть сервер HP ProLiant DL360 G5 с RAID-контроллером SmartArray P400i. Сам сервер довольно старый, но все еще нормально работает. Единственная проблема - это контроллер RAID, который отмечает исправные диски как неисправные. Это случается довольно часто, почти каждый день. Вот типичный результат ssacli утилита:

# ssacli ctrl all show config
...
   Array A (SATA, Unused Space: 0  MB)

      logicaldrive 1 (931.5 GB, RAID 1, Interim Recovery Mode)

      physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SATA HDD, 1 TB, OK)
      physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SATA HDD, 1 TB, Failed)

Подробная информация:

# ssacli ctrl slot=0 pd 1I:1:2 show detail

Smart Array P400i in Slot 0 (Embedded)

   Array A

      physicaldrive 1I:1:2
         Port: 1I
         Box: 1
         Bay: 2
         Status: Failed
         Last Failure Reason: Not ready bad sense
         Drive Type: Data Drive
         Interface Type: SATA
         Size: 1 TB
         Drive exposed to OS: False
         Logical/Physical Block Size: 512/512
         Firmware Revision: SN03
         Serial Number: ...
         WWID: ...
         Model: ATA     ST91000640NS
         SATA NCQ Capable: True
         SATA NCQ Enabled: True
         PHY Count: 1
         PHY Transfer Rate: 1.5Gbps
         Sanitize Erase Supported: False
         Shingled Magnetic Recording Support: None

После перезагрузки сервера RAID-контроллер снова обнаруживает диск, отмечает его как «ОК» и восстанавливает массив. Массив работает до следующего сбоя. Понятия не имею, почему это происходит. Есть ли способы решить эту проблему, не покупая новый контроллер RAID или HBA? SoftRAID приемлем. В настоящее время я вижу следующие варианты:

  1. Сделайте установку, подобную JBOD, с двумя логическими дисками RAID 0, каждый из которых содержит один физический диск, но я не знаю, поможет ли это.
  2. Настройте RAID-контроллер, чтобы я не исключал неисправные диски из массива, но я не знаю, как это сделать.

Я считаю, что диск плохой. Вы можете проверить это по атрибутам SMART этого диска.

Когда RAID-контроллер обнаруживает ошибку чтения / записи / проверки на диске, он помечает этот диск как FAILED. В это время привод обнаруживает эту ошибку и начинает процедуру замены сектора. Он увеличивает текущий счетчик отложенных секторов и пытается успешно прочитать сбойный сектор. После успешного чтения данных из сбойного сектора диск записывает один в предварительно выделенный сектор, уменьшает счетчик текущих отложенных секторов и увеличивает счетчик перераспределенных секторов. Ненулевые значения этих счетчиков SMART показывают, что у вас проблемы с диском.

После успешной процедуры перераспределения секторов RAID-контроллер может успешно восстановить дисковый массив.

Также диск имеет атрибуты SMART, которые показывают ошибки при передаче данных по интерфейсному кабелю. Плохой кабель может давать такие же симптомы действий RAID-контроллера. Но проблемы с диском возникают чаще, чем с кабелем.

Пожалуйста прочти SMART в Википедии

Похоже, я нашел решение. В настоящее время мой сервер работает без проблем 4 месяца. Вот что я сделал:

  1. Обновлено ядро ​​Linux до версии 4.15, которая включает новый драйвер ядра hpsa для RAID-контроллера.
  2. Создан раздел, который не полностью заполняет жесткий диск, т.е. имеет размер 300 ГБ на жестком диске 1 ТБ. Причина в том, что у этих RAID-контроллеров нет проблем с небольшими дисками (<500 ГБ).
  3. Отключено сканирование фоновой поверхности. Запросите текущую настройку, используя ssacli ctrl slot=0 modify surfacescanmode=? команда. Если это idle, вам нужно переключить его на disable используя ssacli утилита (извините, я забыл команду).