RAID de software usando compartilhamentos de rede como unidades

5

Disclaimer: Isto é provavelmente louco do ponto de vista do desempenho, também do ponto de vista da confiabilidade, e talvez apenas do valor acadêmico (como em: funcionaria?). Dito isto:

O mdadm suportará uma configuração RAID com seus discos redundantes individuais sendo unidades de rede?

Aqui está o pano de fundo da minha idéia (louca?): Eu gostaria de usar uma caixa do linux com apenas um pequeno disco para manter o sistema. Conectados a esta caixa, via ethernet, estão duas outras máquinas , cada uma com um sistema RAID-0 para obter algum uso de discos rígidos antigos. Ambos os volumes RAID-0 são criados para ter aproximadamente o mesmo tamanho. Agora, cada uma dessas máquinas oferece o volume RAID-0 como um compartilhamento de rede e a caixa as monta como / old_drives_0 e / old_drives_1, respectivamente.

Além disso, gostaria de dizer ao mdadm on box para construir um sistema RAID-1 usando / old_drives_0 e / old_drives_1 como os dois "discos" espelhados e oferecer o volume RAID-1 criado na rede como uma unidade.

Posso dizer ao mdadm para usar praticamente qualquer ponto de montagem (e não o usual / dev / sdaX), como em:

mdadm /dev/md0 --create --raid-devices=2 --level=1 /old_drives_1 /old_drives_2
mkfs /dev/md0 # optionally specifying -text3 or -text4
mount /dev/md0 /raid

(citando com folga o link )

Sei que existem muitas razões para não criar uma invasão pela rede, mas também pode haver razões a favor: uma vez que um disco quebra, tudo o que tenho a fazer é conectar um cabo de rede a uma máquina diferente. .. Além disso, quando eu coloco três NICs na caixa, ele pode acessar seus próprios dois "drives" RAID através de conexões Ethernet dedicadas e usar o terceiro para tráfego upstream para acesso ao volume RAID-1 de seus clientes.

Eu poderia até manter em torno de uma "caixa" e uma "máquina" como um substituto que permitiria uma rápida manutenção quando algo falha.

    
por zebonaut 20.01.2016 / 00:23

1 resposta

6

O RAID sempre precisa de um dispositivo (pelo menos se você usar md). Existem duas maneiras. O melhor provavelmente é usar um dispositivo de bloco de rede:

link

Você pode dizer ao md para usar tal dispositivo apenas para escrever (porque é muito lento para ler) com mdadm ... --write-mostly .

A outra opção é criar um arquivo em um volume de rede (nível do sistema de arquivos) e usá-lo para um dispositivo de loop.

    
por 20.01.2016 / 00:36