Как определить, какой диск вышел из строя в настройке FreeNAS / ZFS


12

Я строю сервер на базе FreeNAS в корпусе Supermicro X6DHE-XB 3U с 4 ГБ оперативной памяти и 16 отсеками для горячей замены SATA. Он поставляется с 2x8 портами 3Ware RAID, но я планирую просто использовать возможности ZFS вместо аппаратного RAID. Мой начальный набор дисков будет 8x2TB HITACHI Deskstar 7K3000 HDS723020BLA642.

Если бы я использовал аппаратный RAID, это дало бы мне красный свет на отсеке для дисковода, где произошел сбой диска. Как это работает с ZFS, когда диск выходит из строя? Я не думаю, что есть какая-либо гарантия, что sda = bay1, sdb = bay2 и т. Д. Так как определить, какой диск необходимо заменить? Может ли ZFS сообщить об этом контроллеру SATA, чтобы загорелся индикатор неисправного диска? Это просто сообщает серийный номер привода? Что делать, если диск выходит из строя так сильно, что не может сообщить его серийный номер? Я полагаю, что это хорошая идея записать серийный номер каждого диска и в какой отсек он вошел, прежде чем начать работу. Существуют ли какие-либо другие "подготовительные" задачи, которые облегчат замену дисков в будущем?

Ответы:


4

zpool status -v должен сказать вам, какой диск в сети или нет.


3
+1 FreeNAS основан на FreeBSD, и приводы будут в том порядке, в котором их предоставляет карта. Если имеется один 8-портовый контроллер SAS, диски будут с / dev / da0 по / dev / da7 с той же нумерацией, что и у карты (для каждого диска также обозначены хорошие кабели). Если у вас есть несколько контроллеров или что-то более сложное, вы можете запустить, camcontrol devlistчтобы получить список всех дисков SAS / SCSI и того, на какой карте, цели, на каком они находятся.
Крис С

1
Крис С неверен. Диски не всегда отображаются в порядке, указанном на карте. Например, наш «da7» появляется вторым в списке из 8 дисков ... Кроме того, статус zpool просто дает метки, а не фактические диски.
Брайан Кноблаух

8

Текущая версия FreeNAS (версия 9.3 на данный момент) создаст gptid для каждого диска, добавленного в zpool. Сразу после создания «состояние zpool» будет выглядеть примерно так (в зависимости от конфигурации вашего пула) ...

# zpool
пул состояния : myzfstest
состояние: ONLINE
scan: нет
запрошенной конфигурации:

    NAME                                            STATE     READ WRITE CKSUM
    myzfstest                                       ONLINE       0     0     0
      raidz-0                                       ONLINE       0     0     0
        gptid/4fc2b789-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/51d38480-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/54c672cc-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/56a07638-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
      raidz2-1                                      ONLINE       0     0     0
        gptid/630e1317-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/6557b52d-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/667a1318-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/68cadf75-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
    logs
      mirror-2                                      ONLINE       0     0     0
        gptid/8839f22e-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
        gptid/8a6d0b14-7b7f-11e4-9585-de9b81338d40  ONLINE       0     0     0
    cache
      gptid/8c2f3824-7b7f-11e4-9585-de9b81338d40    ONLINE       0     0     0
      gptid/8da9ba80-7b7f-11e4-9585-de9b81338d40    ONLINE       0     0     0
    spares
      gptid/72f039f2-7b8a-11e4-9585-de9b81338d40    AVAIL
      gptid/750df91d-7b8a-11e4-9585-de9b81338d40    AVAIL

ошибки: нет известных ошибок данных

К сожалению, веб-интерфейс не показывает эти цифры. Итак, если вы получаете сообщение об ошибке, говорящее, что «gptid / 6557b52d-7b7f-11e4-9585-de9b81338d40» плохо ... как вы знаете, какой диск вытащить? Выяснение этой части требует некоторой работы во время установки.

  1. Когда вы строите свою систему. Запишите серийный номер каждого диска, а также запишите место, где этот диск был вставлен. Например, в случае двухстороннего JBOD вы можете отметить переднюю / заднюю, строку и столбец.
  2. При загрузке FreeNAS в веб-интерфейсе перейдите в раздел «Хранилище> Тома / Просмотр дисков». На этой вкладке у вас должен быть список всех ваших дисков и их серийные номера. Запишите имя диска, указанное для каждого серийного номера, который вы указали в предыдущем списке. Если вы не видите серийные номера, вам придется перейти к оболочке и ввести smartctl -a /dev/ada0 | grep ^Serial(заменив «/ dev / ada0» на каждое из названий дисков в списке)
  3. Теперь в оболочке нам нужно сопоставить имена дисков со всеми числами gptid. Итак, напечатайте, glabel statusи вы должны получить что-то вроде этого ...

    # glabel status
    
    CORRECT>glabel status (y|n|e|a)? yes    
                                          Name  Status  Components  
                                 ufs/FreeNASs3     N/A  ada0s3  
                                 ufs/FreeNASs4     N/A  ada0s4  
                                ufs/FreeNASs1a     N/A  ada0s1a
    gptid/616cddb6-7b7f-11e4-9585-de9b81338d40     N/A  ada0p2  
    gptid/630e1317-7b7f-11e4-9585-de9b81338d40     N/A  da1p1   
    gptid/6557b52d-7b7f-11e4-9585-de9b81338d40     N/A  da2p1   
    gptid/667a1318-7b7f-11e4-9585-de9b81338d40     N/A  da3p1   
    gptid/68cadf75-7b7f-11e4-9585-de9b81338d40     N/A  da4p1   
    
  4. Теперь запишите все числа gptid, чтобы связать их с именами дисков и, следовательно, серийными номерами и их расположением. Примечание : когда вы видите что-то вроде «da3p1», это первый раздел диска, обозначенный как da3. Список в веб-интерфейсе будет отображать только метку «da3» для диска.

Теперь, когда появляется ошибка, говорящая о том, что диск с номером gptid xyz имеет ошибку, вы сможете ссылаться на свой лист и знать, какой диск вам нужно извлечь / заменить.

Я знаю, что это слишком поздно для оригинального плаката; но, возможно, другие найдут это полезным.


1
Для первоначального вопроса, «статус глабели» является критической частью. Это позволит вам выяснить соответствие между дурацкими идентификаторами и физическим.
Брайан Кноблаух

Вау. Отличный ответ, но это немного разочаровывает. ZFS не имеет полуприличного способа отслеживать диски.
mikato

5

Что вам нужно, так это утилита sas2ircu от LSI (теперь Avago). LSI поддерживает версии для FreeBSD, Linux и Windwos. С FreeNAS вам потребуется версия FreeBSD.

Чтобы попробовать это, вы должны поместить его в каталог / tmp и сначала сделать его исполняемым.

Шаг первый - узнать идентификатор вашего SAS HBA (пример):

/tmp# ./sas2ircu list
LSI Corporation SAS2 IR Configuration Utility.
Version 19.00.00.00 (2014.03.17)
Copyright (c) 2008-2014 LSI Corporation. All rights reserved.


         Adapter      Vendor  Device                       SubSys  SubSys
 Index    Type          ID      ID    Pci Address          Ven ID  Dev ID
 -----  ------------  ------  ------  -----------------    ------  ------
   0     SAS2008     1000h    72h   00h:04h:00h:00h      1000h   3020h
SAS2IRCU: Utility Completed Successfully.

Шаг второй будет генерировать список всех ваших устройств, которые вы можете проверить позже:

/tmp# ./sas2ircu 0 display > disklist.txt

Шаг 3 изучает ваш список дисков. Это будет выглядеть так:

/tmp# vi disklist.txt
LSI Corporation SAS2 IR Configuration Utility.
Version 19.00.00.00 (2014.03.17)
Copyright (c) 2008-2014 LSI Corporation. All rights reserved.

Read configuration has been initiated for controller 0
------------------------------------------------------------------------
Controller information
------------------------------------------------------------------------
  Controller type                         : SAS2008
  BIOS version                            : 7.37.00.00
  Firmware version                        : 19.00.00.00
  Channel description                     : 1 Serial Attached SCSI
  Initiator ID                            : 0
  Maximum physical devices                : 255
  Concurrent commands supported           : 3432
  Slot                                    : 4
  Segment                                 : 0
  Bus                                     : 4
  Device                                  : 0
  Function                                : 0
  RAID Support                            : No
------------------------------------------------------------------------
IR Volume information
------------------------------------------------------------------------
------------------------------------------------------------------------
Physical device information
------------------------------------------------------------------------
Initiator at ID #0

Device is a Enclosure services device
  Enclosure #                             : 2
  Slot #                                  : 24
  SAS Address                             : 5003048-0-00d3-a87d
  State                                   : Standby (SBY)
  Manufacturer                            : LSI CORP
  Model Number                            : SAS2X36
  Firmware Revision                       : 0717
  Serial No                               : x36557230
  GUID                                    : N/A
  Drive Type                              : Undetermined

Device is a Enclosure services device
  Enclosure #                             : 3
  Slot #                                  : 0
  SAS Address                             : 5003048-0-00ca-7bfd
  State                                   : Standby (SBY)
  Manufacturer                            : LSI CORP
  Model Number                            : SAS2X28
  Firmware Revision                       : 0717
  Serial No                               : x36557230
  GUID                                    : N/A
  Drive Type                              : Undetermined

Device is a Hard disk
  Enclosure #                             : 4
  Slot #                                  : 0
  SAS Address                             : 5003048-0-00d3-a8cc
  State                                   : Ready (RDY)
  Size (in MB)/(in sectors)               : 1907729/3907029167
  Manufacturer                            : ATA
  Model Number                            : WDC WD20EARS-00M
  Firmware Revision                       : AB51
  Serial No                               : WDWCAZA1037887
  GUID                                    : N/A
  Drive Type                              : Undetermined

Device is a Hard disk
  Enclosure #                             : 4
  Slot #                                  : 1

Шаг 4 идентифицирует неисправный диск - вы узнаете, по какой отсутствующей или поврежденной информации, сообщенной на диске. Получите Enclosure # и Slot # и используйте их, чтобы мигать индикатор лотка на шаге 5: чтобы найти Enclosure # 4, Slot # 0

 /tmp# ./sas2ircu 0 locate 4:1 ON

Чтобы выключить светодиод после замены:

/tmp# ./sas2ircu 0 locate 4:1 OFF

Надеюсь, это поможет!


некоторым системам freeNAS может понадобиться sas3ircu
Брайан Минтон

2

Посмотрите на тома.

Выберите громкость, которая ухудшена.

В нижней части экрана есть три варианта ... нажмите Состояние громкости

Теперь вы увидите крупным планом том и его отдельные жесткие диски, перечисленные что-то вроде ada3p2, ada5p2, ada6p2, ada4p2 и т. Д.

Выберите ухудшенный диск.

В нижней части экрана вы увидите два варианта; Редактировать диск и заменить

Выберите Редактировать диск

Теперь вы должны увидеть серийный номер поврежденного диска.

Выключите сервер FreeNAS и найдите этот диск.


Это должен быть правильный ответ. Когда я сделал это, я нашел полный список всех прикрепленных сериалов, поэтому не прикрепленный должен быть неисправным! Большое спасибо @ wri7913
Delta_zulu

1

Это предполагает, что у вас есть дело, которое имеет отдельные огни HD (иначе серверное дело)

Найти список для диска, это плохо. Пример / dev / da9, /dev/sda...etc

Отключите этот диск, используя команды терминала GUI или FreeNAS.

Выполните DD, чтобы прочитать этот диск в / dev / null, пока вы смотрите на лицевую сторону сервера на свет, который сейчас безумно мигает.

sudo dd if=/dev/da# of=/dev/null

Запомните расположение диска, отмените команду DD (ctrl-c), а затем перейдите к способу замены. Для freeNAS загрузите новый диск, затем нажмите кнопку замены графического интерфейса и завершите этот процесс. Когда закончите, удалите плохой диск и делайте с ним все, что хотите. Проверьте это больше, Защитите его, физически уничтожьте, отправьте на гарантийный ремонт ..... и т. Д.


0

Самый простой способ, который я нашел.

нажмите хранилище нажмите просмотреть диски.

вытащите один кабель sata. Распечатайте наклейку с отсутствующим диском со смотрового диска, он же наклейка с наклейкой ada1, в сторону диска

переподключите диск. отсоедините второй кабель sata от печатной этикетки ada2 и т.

затем, когда диск выходит из строя, вы знаете его ADA2

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.