Como faço para estender um array RAID5 com storcli?

2

Acabei de comprar um novo disco. Como faço para estender um array RAID existente sem perder dados?

    
por Aaron Digulla 31.12.2016 / 11:52

1 resposta

4

Se você cometer um erro, poderá perder todos os seus dados. Backup primeiro. Então continue.

Use storcli /c0 show para ver quais unidades e volumes você possui. A tabela TOPOLOGY é um bom começo:

TOPOLOGY :
========

----------------------------------------------------------------------------
DG Arr Row EID:Slot DID Type  State BT      Size PDC  PI SED DS3  FSpace TR 
----------------------------------------------------------------------------
 0 -   -   -        -   RAID5 Optl  N  10.914 TB dflt N  N   none N      N  
 0 0   -   -        -   RAID5 Optl  N  10.914 TB dflt N  N   none N      N  
 0 0   0   252:0    10  DRIVE Onln  N   2.728 TB dflt N  N   none -      N  
 0 0   1   252:1    9   DRIVE Onln  N   2.728 TB dflt N  N   none -      N  
 0 0   2   252:2    11  DRIVE Onln  N   2.728 TB dflt N  N   none -      N  
 0 0   3   252:3    8   DRIVE Onln  N   2.728 TB dflt N  N   none -      N  
 0 0   4   252:4    12  DRIVE Onln  N   2.728 TB dflt N  N   none -      N  
----------------------------------------------------------------------------

Isso mostra quais discos já estão na matriz RAID. Eu tenho apenas uma única matriz RAID ( Arr ) com o ID 0 .

PD LIST mostra os discos:

PD LIST :
=======

--------------------------------------------------------------------------------
EID:Slt DID State DG     Size Intf Med SED PI SeSz Model                Sp Type 
--------------------------------------------------------------------------------
252:0    10 Onln   0 2.728 TB SATA HDD N   N  512B WDC WD30EFRX-68AX9N0 U  -    
252:1     9 Onln   0 2.728 TB SATA HDD N   N  512B WDC WD30EFRX-68AX9N0 U  -    
252:2    11 Onln   0 2.728 TB SATA HDD N   N  512B WDC WD30EFRX-68EUZN0 U  -    
252:3     8 Onln   0 2.728 TB SATA HDD N   N  512B WDC WD30EFRX-68EUZN0 U  -    
252:4    12 Onln   0 2.728 TB SATA HDD N   N  512B WDC WD30EFRX-68EUZN0 U  -    
252:6    14 GHS    - 2.728 TB SATA HDD N   N  512B WDC WD30EFRX-68EUZN0 D  -    
252:7    13 UGood  - 2.728 TB SATA HDD N   N  512B WDC WD30EFRX-68EUZN0 D  -    
--------------------------------------------------------------------------------

O disco recém-adicionado deve aparecer como UGood (bom não configurado). No exemplo, esse é o disco 13 no slot 7 do gabinete 252 .

Para adicionar o disco à matriz RAID:

storcli /c0/v0 start migrate type=raid5 option=add drives=252:13

/c0 é o controlador, /v0 é o volume RAID (consulte TOPOLOGY acima ou VD LIST ) para alterar, start migrate é o comando a ser emitido, type=raid5 significa "mantenha-o RAID5", queremos adicionar um disco ( option=add ) e drives é a lista de discos para adicionar no formulário EID:Slt (consulte PD LIST ).

O processo pode demorar vários dias. Você pode continuar usando o (s) sistema (s) de arquivos no volume RAID enquanto o controlador faz o trabalho em segundo plano. Você pode até mesmo reiniciar o servidor, o controlador apenas continuará de onde estava.

Para verificar o progresso, use storcli /c0/v0 show migrate , que imprime algo como:

VD Operation Status :
===================

-----------------------------------------------------------
VD Operation Progress% Status          Estimated Time Left 
-----------------------------------------------------------
 0 Migrate          38 In Progress     49 Minutes                   
-----------------------------------------------------------

Nota: A estimativa está longe; aqueles 49 minutos foram 3 horas no meu caso. Meu sentimento é que essa primeira estimativa de 2 dias e 8 horas foi muito mais precisa.

Quando a migração estiver concluída, o controlador fará outro trabalho em segundo plano ("inicialização em segundo plano"). Não tenho certeza do que é isso.

Quando terminar, será impresso:

VD Operation Status :
===================

-----------------------------------------------------------
VD Operation Progress% Status          Estimated Time Left 
-----------------------------------------------------------
 0 Migrate   -         Not in progress -                   
-----------------------------------------------------------

Use storcli /c0 show para ver o novo tamanho do seu volume RAID:

VD LIST :
=======

--------------------------------------------------------------
DG/VD TYPE  State Access Consist Cache Cac sCC      Size Name 
--------------------------------------------------------------
0/0   RAID5 Optl  RW     Yes     RWBD  -   OFF 10.914 TB data 
--------------------------------------------------------------
                                               ^^^^^^

Estou usando o LVM para gerenciar o disco. pvscan mostra que o tamanho do disco não mudou:

PV /dev/sdb   VG data   lvm2 [8,19 TiB / 526,00 GiB free]
                              ^^^^^^^^

Hora de reiniciar (pelo menos eu não consegui encontrar uma maneira de fazer o Linux redigitar o disco).

Pelo menos, lsblk agora mostra o tamanho correto do disco:

sdb              8:16   0  10,9T  0 disk
                           ^^^^^

O LVM ainda não consegue vê-lo ( pvscan ):

PV /dev/sdb   VG data   lvm2 [8,19 TiB / 526,00 GiB free]

pvdisplay fornece mais detalhes:

  --- Physical volume ---
  PV Name               /dev/sdb
  VG Name               data
  PV Size               8,19 TiB / not usable 3,00 MiB
  Allocatable           yes 
  PE Size               4,00 MiB
  Total PE              2145791
  Free PE               134655
  Allocated PE          2011136
  PV UUID               vM1WQP-CZXu-FrWJ-kRti-hMa2-I1rh-Mga6Xg

Podemos testar a próxima operação antes de executá-la: pvresize --test -v /dev/sdb

  TEST MODE: Metadata will NOT be updated and volumes will not be (de)activated.
    Using physical volume(s) on command line.
    Test mode: Skipping archiving of volume group.
    Resizing volume "/dev/sdb" to 23437770752 sectors.
    Resizing physical volume /dev/sdb from 0 to 2861055 extents.
    Updating physical volume "/dev/sdb"
    Test mode: Skipping backup of volume group.
  Physical volume "/dev/sdb" changed
  1 physical volume(s) resized / 0 physical volume(s) not resized
    Test mode: Wiping internal cache
    Wiping internal VG cache

2861055 extents a 4 MiB traduz a 10.91 TiB (2861055 * 4096/1024/1024/1024).

Redimensione o volume lógico: pvresize -v /dev/sdb

Finalmente, o LVM vê a nova capacidade:

# pvdisplay 
  --- Physical volume ---
  PV Name               /dev/sdb
  VG Name               data
  PV Size               10,91 TiB / not usable 3,00 MiB
  Allocatable           yes 
  PE Size               4,00 MiB
  Total PE              2861055
  Free PE               849919
  Allocated PE          2011136
  PV UUID               vM1WQP-CZXu-FrWJ-kRti-hMa2-I1rh-Mga6Xg

Agora você pode continuar a aumentar os sistemas de arquivos no grupo de volumes.

    
por 31.12.2016 / 12:36