Como determinar qual disco falhou em uma configuração FreeNAS / ZFS

9

Estou construindo um servidor baseado no FreeNAS em um gabinete Supermicro X6DHE-XB 3U com 4G de RAM, 16 compartimentos hot-swap SATA. Ele vem com placas RAID 3Ware de 3x8 portas, mas estou planejando apenas usar os recursos do ZFS em vez do RAID de hardware. Meu conjunto inicial de drives será de 8x2TB HITACHI Deskstar 7K3000 HDS723020BLA642.

Se eu estivesse usando o RAID baseado em hardware, isso me forneceria uma luz vermelha no compartimento da unidade, onde a unidade falhava. Como funciona com o ZFS quando uma unidade falha? Não creio que exista alguma garantia de que sda = bay1, sdb = bay2, etc., portanto, como você determina qual unidade precisa ser substituída? O ZFS pode relatar ao controlador SATA para ligar a luz "falha na unidade"? Apenas informa o número de série da unidade? E se a unidade falhar tão strong que não possa relatar seu número de série? Eu suponho que é uma boa idéia anotar o número de série de cada unidade e em qual baía ela entrou antes de você ir viver. Existem outras tarefas de "pré-produção" para facilitar a substituição de unidades no futuro?

    
por John P 20.04.2011 / 17:07

6 respostas

3

zpool status -v deve informar qual disco está on-line ou não.

    
por 20.04.2011 / 18:58
6

A versão atual do FreeNAS (ver 9.3 no momento) criará um gptid para cada unidade adicionada a um zpool. Imediatamente após a criação, o "zpool status" será parecido com isto (dependendo da configuração do seu pool) ...

# zpool status
pool: myzfstest
state: ONLINE
scan: none
requested config:

    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

errors: No known data errors

Infelizmente, a GUI da web não mostra esses números. Então, se você receber um erro dizendo que "gptid / 6557b52d-7b7f-11e4-9585-de9b81338d40" é ruim ... como você sabe qual unidade para puxar? Descobrir essa parte requer algum trabalho pesado no momento da instalação.

  1. Quando você constrói seu sistema. Anote o número de série de cada unidade e anote também a localização de onde a unidade foi inserida. Em um caso JBOD de dupla face, por exemplo, você pode anotar front / back, row, & coluna.
  2. Quando você inicializa o FreeNAS, na GUI da web, vá para "storage > volumes / view disks". Nessa guia, você deve ter uma lista de todas as suas unidades e seus números de série. Anote o nome da unidade dada para cada número de série que você tinha na lista anterior. Se você não vir os números de série, terá que ir até o shell e digitar smartctl -a /dev/ada0 | grep ^Serial (substituindo "/ dev / ada0" por cada um dos nomes de unidade da lista)
  3. Agora, no shell, precisamos combinar os nomes das unidades com todos os números gptid. Então, digite glabel status e você deve obter algo assim ...

    # 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. Agora escreva em todos os números gptid para associá-los aos nomes das unidades e, portanto, aos números de série e suas localizações. Nota : quando você vê algo como "da3p1", esta é uma partição da unidade identificada como da3. A lista na GUI da Web mostrará apenas o rótulo "da3" para o disco.

Agora, quando um erro aparecer dizendo que um disco com o número gptid xyz tem um erro, você poderá fazer referência à sua planilha e saber qual unidade precisa puxar / substituir.

Eu sei que isso está atrasado para o pôster original; mas talvez outros achem isso útil.

    
por 04.12.2014 / 09:06
5

O que você precisa é do utilitário sas2ircu da LSI (agora Avago). O LSI mantém versões para o FreeBSD, Linux e Windwos. Com o FreeNAS você precisará da versão do FreeBSD.

Para experimentar, você o colocaria no diretório / tmp e o executaria primeiro.

O primeiro passo é descobrir o ID do seu HBA SAS (exemplo):

/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.

O segundo passo seria gerar uma lista de todos os seus dispositivos que você pode examinar mais tarde:

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

O passo 3 está examinando sua lista de discos. Será semelhante a:

/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

O passo 4 é identificar a sua unidade com falha - você saberá quais as informações ausentes ou danificadas relatadas na unidade. Obtenha o nº do compartimento e o slot # e use-os para piscar o LED da bandeja Etapa 5: Para localizar o Gabinete nº 4, Slot # 0

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

Para desligar o LED após a substituição:

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

Espero que isso ajude!

    
por 13.11.2014 / 19:26
2

Olhe para os volumes.

Selecione o volume que está degradado.

Na parte inferior da tela, há três seleções ... clique em Status do volume

Você verá agora um close do volume e de seus discos rígidos individuais listados como ada3p2, ada5p2, ada6p2, ada4p2, etc.

Selecione a unidade degradada.

Na parte inferior da tela, você verá duas opções; Edite o disco e substitua

Selecione Editar disco

Agora você deve ver o número de série do disco degradado.

Desligue seu servidor FreeNAS e procure por esse disco.

    
por 23.03.2017 / 16:08
0

maneira mais fácil que encontrei.

clique nas unidades de visualização de cliques de armazenamento.

retire um cabo sata. imprima rótulo com a unidade ausente do disco de visualização, também conhecido como rótulo ada1 stick, para o lado da unidade.

reconecte a unidade. puxe o segundo cabo sata da etiqueta de impressão ada2 etc

em seguida, quando uma unidade falhar, você sabe o seu ada2

    
por 21.12.2015 / 09:33
0

Isso pressupõe que você tenha um gabinete com luzes HD individuais (também conhecido como caso de servidor)

Encontre a listagem da unidade que está ruim. Exemplo / dev / da9, / dev / sda ... etc

Offline esse disco usando os comandos do terminal GUI ou FreeNAS.

Execute DD para ler esse disco para / dev / null enquanto você olha para a frente do servidor para a luz que está piscando loucamente.

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

Observe a localização do disco, cancele o comando DD (ctrl-c) e, em seguida, execute o método de substituição. Para freeNAS, carregue o novo disco, clique no botão GUI Replace e conclua o processo. Quando terminar, remova a unidade defeituosa e faça o que quiser com ela. Teste mais, Secure Erase it, fisicamente destruí-lo, enviá-lo para reparo de garantia ..... etc.

    
por 17.06.2018 / 17:17

Tags