Existe um método de armazenamento redundante que lide bem com unidades de vários tamanhos? E quanto ao crescimento?

Existe um método de armazenamento redundante que lide bem com unidades de vários tamanhos? E quanto ao crescimento?

Estou procurando algo redundante que possa simplesmente colocar em um servidor com um monte de unidades de lixo que funcione sem que as unidades menores prejudiquem a capacidade das unidades maiores.

Digamos que eu tenha quatro unidades de tamanhos desiguais porque sou pobre. Se bem entendi, seria assim no RAID 5:

insira a descrição da imagem aqui

Existem 9 GB de dados reais armazenados

Mas, existe algo assim?:

insira a descrição da imagem aqui

Haveria 12 GB de dados reais armazenados

Além disso, existe um método de armazenamento que permite redundância, mas também a capacidade de aumentar um conjunto de unidades apenas adicionando mais armazenamento? Eu gostaria de aumentar meu servidor sem precisar reconstruí-lo completamente (de novo, ruim).

Obrigado

Responder1

Para aproveitar ao máximo o espaço, pode ser uma opção criar um raid-5 com os primeiros 3 GB de todas as 4 unidades, depois criar outro RAID 5 para os 2 GB restantes nas 3 unidades de 5 GB e combinar os dois ataques em um RAID 0 (listrado). No entanto, expandir o raid 5s seria impossível, portanto a única opção para expansão é adicionar um dispositivo (virtual/físico) ao raid 0 pai.

Para tentar usar todas as unidades e ainda permitir a expansão, você pode dividir as unidades em dois grupos com uma capacidade total tão igual quanto possível, criar um raid 0 expansível (distribuído) para cada grupo e, em seguida, implementar um sistema raid 1 (espelhado) com os dois sistemas raid 0. Isso pode funcionar até mesmo para o ataque 5 com 3 ou mais grupos, desde que você possa agrupá-los adequadamente. Expandir isso significaria adicionar uma unidade a todos os grupos, expandir seus sistemas raid 0 e, em seguida, expandir o raid pai para usar o novo espaço. Embora fácil num nível fundamental, o último passo pode revelar-se desafiador na prática.

Honestamente, tudo isso parece dor de cabeça. Acho que sua melhor opção é emparelhar unidades do mesmo tamanho, criar um ataque 1 (espelho) com cada par e ter uma implementação expansível de ataque 0 (distribuído), como pools ZFS, para colocá-los em um dispositivo. Talvez você não use todas as unidades e só possa adicionar duas unidades por vez, mas é simples, expansível, fácil de entender e bastante redundante.

Pools ZFS distribuídos/espelhados (https://www.freebsd.org/doc/handbook/zfs-zpool.html)

Responder2

Se você estiver usando o Windows, isso seria possível com Espaços de Armazenamento no Windows 8.1 e superior. Ver:

https://serverfault.com/questions/770472/mixing-disks-of- Different-sizes-in-a-storage-spaces-pool/771293#771293

https://www.pcsteps.com/738-software-raid-windows-storage-pools/

informação relacionada