Erro de extensão alocável adequada e insuficiente ao executar o controle de RAID

Erro de extensão alocável adequada e insuficiente ao executar o controle de RAID

Para melhorar o desempenho e ao mesmo tempo manter a redundância, estou tentando converter o sistema de arquivos raiz de um NAS de um volume lógico RAID 5 para um volume lógico RAID 10, mantendo o mesmo número de discos usados.

Emesseseção da lvmraidpágina de manual, sugere que a conversão de RAID 10 e RAID 5 é possível com uma conversão indireta.

As seguintes conversões de aquisição são atualmente possíveis:

...

  • entre listrado/raid0 e raid5.

...

  • entre listrado/raid0 e raid10.

Mas ao executar o lvconvertcomando apropriado (em um testLV semelhante), repetidamente conforme solicitado para realizar as conversões intermediárias, recebo este erro na última etapa ao finalmente converter de RAID 0 para RAID 10:

root@nas:~# lvcreate --type raid5 -i 3 -n test -L 100M vg
  Using default stripesize 64.00 KiB.
  Rounding size 100.00 MiB (25 extents) up to stripe boundary size 108.00 MiB (27 extents).
  Logical volume "test" created.

root@nas:~# lvconvert vg/test --type raid10 -m 1 -i 2
  Using default stripesize 64.00 KiB.
  Replaced LV type raid10 (same as raid10_near) with possible type raid5_n.
  Repeat this command to convert to raid10 after an interim conversion has finished.
  Converting raid5 (same as raid5_ls) LV vg/test to raid5_n.
Are you sure you want to convert raid5 LV vg/test? [y/n]: y
  Logical volume vg/test successfully converted.

root@nas:~# lvconvert vg/test --type raid10 -m 1 -i 2
  Using default stripesize 64.00 KiB.
  Replaced LV type raid10 (same as raid10_near) with possible type raid0_meta.
  Repeat this command to convert to raid10 after an interim conversion has finished.
Are you sure you want to convert raid5_n LV vg/test to raid0_meta type? [y/n]: y
  Logical volume vg/test successfully converted.

root@nas:~# lvconvert vg/test --type raid10 -m 1 -i 2
  Using default stripesize 64.00 KiB.
Are you sure you want to convert raid0_meta LV vg/test to raid10 type? [y/n]: y
  Insufficient suitable allocatable extents for logical volume : 30 more required

root@nas:~#

Mesmo ao liberar extensões físicas e reduzir o tamanho do LV, recebo o mesmo erro. Todos os volumes físicos são alocáveis.

Aqui está o vgdisplayresultado:

  --- Volume group ---
  VG Name               vg
  System ID             
  Format                lvm2
  Metadata Areas        4
  Metadata Sequence No  333
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                3
  Open LV               2
  Max PV                0
  Cur PV                4
  Act PV                4
  VG Size               <3.64 TiB
  PE Size               4.00 MiB
  Total PE              953864
  Alloc PE / Size       943654 / <3.60 TiB
  Free  PE / Size       10210 / 39.88 GiB
  VG UUID               PF08Ce-xvsS-7KsA-0Vw6-zkXR-jyUf-ocDWDW

Como resolvo esse erro? Eu gostaria de usar os mesmos PEs para o LV convertido, reduzindo o sistema de arquivos conforme necessário.

Responder1

Para os propósitos desta descrição, considerediscosignifica um disco, partição ou outro contêiner lógico. Cadadiscoé considerado do mesmo tamanho, segurando umunidadede armazenamento (1 GB, 1 TB, tanto faz; não importa).

  • RAID 5 usa três discos para duas unidades de armazenamento útil
  • RAID 0 usa dois discos para duas unidades de armazenamento útil
  • O RAID 10 usa dois discos para uma unidade de armazenamento útil; normalmente o RAID 10 pode ser considerado como RAID 1 sobre o RAID 0 (ou vv), então você usaria quatro discos para duas unidades de armazenamento útil

Também

  • Ao converter de RAID 5 para RAID 0, você sobra uma unidade de armazenamento (ou seja, um disco sobressalente)
  • Ao converter de RAID 0 para RAID 10, você precisa de uma unidade adicional de armazenamento para cada unidade que estiver convertendo (ou seja, dois discos extras além dos dois que você está usando atualmente)

Consequência: você começou com três discos, então falta um disco.

Uma opção pode ser ver se você pode reduzir o uso de dois discos para um array RAID 0, mas isso pressupõe que seu array RAID 5 original esteja apenas meio cheio. A outra opção é obter um quarto disco.

informação relacionada