Ubuntu 22.04.3 LTS executando mdadm 16 x 8TB Raid 6 - É possível atualizar discos individuais e usar o espaço imediatamente sem usar LVM?

Ubuntu 22.04.3 LTS executando mdadm 16 x 8TB Raid 6 - É possível atualizar discos individuais e usar o espaço imediatamente sem usar LVM?

Mais algumas informações básicas ... Eu tenho 4 arrays em tempo real (sempre em execução para eu usar) - os 2 arrays grandes e importantes (40 TB [20 TB usados] e 112 TB [105 TB usados] estão sendo copiados em um array Raid6 de 16 x 8 TB (112 TB armazenamento total gratuito - e como você pode ver, tenho mais para fazer backup do que espaço).

Minha solução melhor foi comprar outro JBOD SuperMicro 24bay, mas como depois da cobiça, os preços dobraram o método mais barato agora, ... é atualizar meus drives. MAS, não posso comprar unidades Exos de 16 x 16 TB ao mesmo tempo... isso é muito caro para um servidor doméstico. :)

Então, o que me levou a tentar encontrar uma maneira de atualizar tudo isso?

Eu comprei 3 Exos de 16 TB ontem. Executei os seguintes comandos na matriz de backup ...

#UPGRADE AN ARRAY *******************************************************
#FIRST ADD SPARES
mdadm /dev/md4 --add /dev/sdan  (a 16TB drive)
mdadm /dev/md4 --add /dev/sdao  (a 16TB drive)

#SECOND REPLACE DISKS (2 at a time)  replace 2 8TB drives with 16TB drives.
mdadm /dev/md4 --replace /dev/sdah /dev/sdai --with /dev/sdan /dev/sdao

Pergunta nº 1: não estou usando LVM. Apenas um mdadm raid6 normal com um sistema de arquivos ext4 no topo. ENTÃO, minhas suposições são... Não posso usar o espaço extra até que TODAS as unidades de 8 TB sejam atualizadas para 16 TB... Pergunta nº 1: Isso está correto?


Eu estava pensando... uma alternativa seria... assim que obtiver unidades de 9 x 16 TB, eu poderia criar um novo array e copiar tudo desse array de 16 x 8 TB diretamente para o array de 9 x 16 TB, pois eles são do mesmo tamanho e ENTÃO Eu poderia simplesmente aumentar o array que fiz antes... Depois de ter o array de 9 discos... é fácil adicioná-lo...

mdadm --grow --raid-devices=10 --backup-file=/root/md4_grow.bak /dev/md4

e então...

resize2fs /dev/md4

Então, eu simplesmente não conheço as limitações do mdadm. Eu sei que em minha synology nas posso atualizar de forma híbrida e obter uso total de qualquer unidade imediatamente ... mas prefiro o mdadm mesmo que não possa ter controle híbrido do sistema de arquivos. Acho que poderia adicionar LVM em cima do raid6... mas nunca usei isso antes... não tenho certeza se poderia converter o array atual que tenho agora para LVM ou se teria que apagar tudo. É um array de backup... então, posso tecnicamente destruí-lo... MAS, o mais assustador então é... eu não tenho mais um backup. E se meus arrays principais falharem enquanto eu reconstruo esse novo array? Então eu perderia muitos dados.

Eu sei que o ataque não é um backup, mas essa matriz de backup fica desativada na maioria das vezes. Ele só é ativado para o backup e depois desativado novamente.

Para os dados superimportantes... eu copiei e colei em alguns drives Exos de 10 TB que não estão em um ataque e coloquei em uma caixa "apenas no caso" de algo acontecer. Infelizmente, tenho que escolher o que fazer backup dessa maneira porque tenho muitos dados para fazer backup corretamente... então, meu array de backup é a única coisa próxima do tamanho necessário para fazer backup dos arrays em tempo real...


Pergunta hipotética nº 2: Digamos que eu finalmente --substitua --com todos os meus IronWolfs de 16 x 8 TB por unidades Exos de 16 x 16 TB... devo apenas executar

resize2fs /dev/md4

e o mdadm verá... "Ei, você está usando apenas 8 TB dos 16 TB!!!! Vamos consertar isso!!!" e continua a expandir para preencher TODO o espaço? Ou preciso executar outros comandos depois que todas as unidades forem atualizadas?

Eu li que crescer pode ter um tamanho, mas... nunca usei isso... só usei crescer para ADICIONAR outra unidade ao array... indo de --raid-devices=9 para --raid -devices=10 por exemplo... e depois executando

resize2fs /dev/md4

para obter o novo espaço encontrado...


Pensamentos de usuários mais experientes do que eu?

(obrigado Gerald por formatar o código, já faz anos que não faço uma pergunta e esqueci).

informação relacionada