O que posso fazer com os “perfis” btrfs?

2

Lendo a documentação do comando btrfs (sub), ele pode "equilibrar apenas grupos de blocos com os perfis de replicação" e "converter blocos selecionados em um determinado perfil" e, aparentemente, permite blocos diferentes (a unidade principal alocada de recurso de gerenciamento de volume) para ter características diferentes. Mas não consigo descobrir exatamente como usar isso e dizer o que fazer.

Veja o que estou pensando:

  1. O disco rígido é formatado como três partições e um único btrfs é criado para usar todos os três, com metadados como raid5 e dados simples como únicos.

  2. Copie alguns terabytes de arquivos para a unidade.

  3. ✪ Altere o perfil do bloco "data" para distribuí-lo pelas partições.

  4. Crie arquivos de recuperação Parchive , o que me dá 20% de redundância nesses arquivos arquivados a frio . Com a política de replicação em vigor à medida que esses arquivos são adicionados, cada arquivo será distribuído pelas três partições. Eu terei certeza de ter os registros de recuperação para um conjunto distribuídos sobre as partições, não agrupados rigidamente como o gerenciamento eficiente do sistema de arquivos iria se esforçar.

  5. Verifique tudo

  6. ✪ Altere o perfil de replicação de dados para RAID5.

  7. Enquanto a unidade estiver residente no "dock", novos arquivos podem ser adicionados e eles têm 2of3 redundancy fornecida automaticamente pelo sistema de arquivos.

  8. O Drive é removido e armazenado fora do site. A unidade é girada mensalmente, e o material adicionado no mês anterior agora faz parte da etapa 2. Trocando unidades no local bimensais, eu vou querer trocar a política de volta para Única e distribuir para atualizar a etapa 4 com o material fresco.

Em suma, desejo atribuir políticas diferentes a subvolumes diferentes ou alterar a política que será aplicada às novas gravações, mas não será aplicada novamente aos blocos existentes.

Como faço as partes marcadas com "✪"?

    
por JDługosz 16.04.2015 / 02:30

1 resposta

1

A resposta curta é que agora você não pode atribuir políticas diferentes a subvolumes diferentes. Houve conversas na lista de discussão do BTRFS sobre como adicionar isso, mas não chegou a lugar nenhum. O lado do kernel tecnicamente suporta a leitura de um sistema de arquivos que possui múltiplos perfis diferentes para dados ou metadados, mas não é possível realmente impor tal configuração.

Além disso, há alguns problemas sérios nos perfis RAID de paridade no BTRFS (ambos raid5 e raid6) ao lidar com faixas de reconstrução que efetivamente significam que você está jogando roleta russa com seus dados. Esses problemas existem desde a integração da paridade RAID no BTRFS, e provavelmente será pelo menos Linux 4.14 no máximo antes de serem corrigidos (apesar do progresso atual, eu diria que o 4.16 é uma estimativa mais realista).

Agora, apenas para converter perfis, você usa o comando btrfs balance para fazer isso. A forma básica para converter metadados e dados em um determinado perfil é:

btrfs balance start -dconvert=<profile> -dsoft -mconvert=<profile> -msoft /path/to/filesystem

As opções -dconvert e -mconvert informam que, respectivamente, convertem dados e perfis de metadados, e as opções -dsoft e -msoft informam que apenas operem em blocos que não são os perfis desejados. Lembre-se de que, por causa de como isso funciona, uma operação de balanceamento pode levar muito tempo (essencialmente, envia tudo o que é selecionado pelos filtros de volta pelo alocador de nível superior).

    
por 14.07.2017 / 20:37