btrfs converte raid 5 para 1 com filtro de uso possível?

0

o btrfs suporta a conversão do sistema de arquivos parcialmente?

Atualmente estou neste estado:

btrfs fi df .
Data, RAID5: total=9.83TiB, used=7.68TiB
System, RAID1: total=32.00MiB, used=704.00KiB
Metadata, RAID1: total=12.00GiB, used=8.61GiB
GlobalReserve, single: total=512.00MiB, used=0.00B

E devido aos erros encontrados no modo raid5, quero migrar para o raid1. Existem várias razões, por não fazer a conversão completa agora. Eu quero definir o modo de destino para raid1. Então, qualquer novo dado será colocado em raid1 e quando houver tempo, eu posso disparar um reequilíbrio completo (ou suave)

Então, algo assim é possível?

btrfs balance start -dconvert=raid1 -dusage=10 .
    
por wuppi 05.09.2016 / 09:41

1 resposta

1

Bem, como ninguém mais tinha qualquer informação eu simplesmente tentei e documentei meus passos.

btrfs balance start -dconvert=raid1 -dusage=10 .

Este comando simplesmente converteu os fragmentos que encontraram o filtro (uso = 10%). Não houve compressão dos blocos (como um saldo regular) e nenhuma configuração do nível de ataque alvo de raid5 para raid1. Então isso foi bastante inútil e criou grandes pedaços com dados quase vazios e tempo perdido.

A próxima abordagem foi usar o filtro de limite e o parâmetro soft, para fazer a conversão passo a passo.

btrfs balance start -dconvert=raid1 -dlimit=500,soft .

Assim, o sistema de arquivos foi convertido passo a passo.

Notas:

  1. balance "pedaços vazios" antes da conversão. Isso economiza tempo.
  2. durante este processo, o btrfs colocará novos dados sempre em partes do antigo perfil do raid. Não encontrei maneira de mudar isso. Portanto, novos dados sempre serão colocados em blocos raid5 ou novos blocos raid5 serão criados para conter os dados. Depois que todo o sistema de arquivos é convertido, esse comportamento é eliminado.
  3. isso funcionou completamente online:)
por 13.09.2016 / 10:16