A unidade hot swap recebeu um novo nome. Se eu adicioná-lo de volta ao array 'md' e ele for renomeado na reinicialização, o array continuará funcionando?

9

Um dos HDDs na configuração RAID do meu servidor falhou, então eu o tirei do array e fiz o hot-swap do data center. Eles fizeram isso, mas agora a nova unidade é /dev/sdc em vez de /dev/sda . Eu suspeito que se eu reiniciar o servidor, ele será /dev/sda novamente, então eu estou hesitante em adicioná-lo de volta à matriz como /dev/sdc porque eu não quero colocar uma armadilha para mim mesmo próxima reinicialização. Eu gostaria apenas de não reiniciar o servidor se eu não precisar (se eu precisar, bem, muito mal para mim).

Se eu adicioná-lo como /dev/sdc , haverá um problema na reinicialização? Ou há alguma maneira de alterar o nome do dispositivo de /dev/sdc para /dev/sda sem reinicializar?

Isso está no Ubuntu 10.04 LTS. É uma md array ("Linux Software RAID"), onde atualmente um dos dispositivos (há alguns deles) se parece com isso ("degraded" porque eu removi o antigo /dev/sda dele): / p>

# mdadm --detail /dev/md0
/dev/md0:
        Version : 00.90.03
  Creation Time : Sun Oct 11 21:07:54 2009
     Raid Level : raid1
     Array Size : 97536 (95.27 MiB 99.88 MB)
  Used Dev Size : 97536 (95.27 MiB 99.88 MB)
   Raid Devices : 2
  Total Devices : 1
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Thu Jun 30 09:31:16 2011
          State : clean, degraded
 Active Devices : 1
Working Devices : 1
 Failed Devices : 0
  Spare Devices : 0

           UUID : 496be7a5:ab9177ed:7792c71e:7dc17aa4
         Events : 0.112

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       0        0        1      removed
    
por T.J. Crowder 30.06.2011 / 15:54

1 resposta

1

Não há problema em ir em frente e adicioná-lo como /dev/sdc . Lendo através do o kernel md documentation , se o nome mudar na reinicialização, não importa. (Bom design, isso.) Aqui está o porquê:

Boot time autodetection of RAID arrays

When md is compiled into the kernel (not as module), partitions of type 0xfd are scanned and automatically assembled into RAID arrays. This autodetection may be suppressed with the kernel parameter "raid=noautodetect". As of kernel 2.6.9, only drives with a type 0 superblock can be autodetected and run at boot time.

The kernel parameter "raid=partitionable" (or "raid=part") means that all auto-detected arrays are assembled as partitionable.

Embora eu não tenha md compilado no kernel, minha configuração faz a mesma coisa que a anterior, porque ele carrega automaticamente mdadm e o mdadm.conf está configurado para varrer todas as partições de um superbloco como o kernel faria:

# by default, scan all partitions (/proc/partitions) for MD superblocks.
# alternatively, specify devices to scan, using wildcards if desired.
DEVICE partitions

Então, é bom reconstruir a matriz com /dev/sdc ; o nome provavelmente mudará para /dev/sda na reinicialização, mas isso não causará nenhum problema se md estiver configurado como acima.

    
por 14.08.2018 / 12:46