RAID de hardware low-end vs RAID de software [fechado]

16

Eu quero construir um arquivo RAID 1 low-end de 6 TB, em um PC antigo.

MB: Intel d2500hn 64bit
CPU: Intel Atom D2500
RAM: 4GB DDR3 533 MHz
PSU: Chinese 500W
NO GPU
1x Ethernet 1Gbps
2x SATA2 ports
1x PCI port
4x USB 2.0

Quero criar um arquivo RAID1 no Linux (acho que no CentOS 7, instalarei tudo o que preciso, acho o ownCloud ou algo semelhante), vou usá-lo na minha rede local doméstica.

É melhor um controlador PCI 10-20 $ raid ou um RAID de software?

Se a invasão de software for melhor, qual devo escolher no CentOS? É melhor colocar o sistema em um USB externo e usar 2 discos nos conectores ou devo colocar o sistema em um disco e criar RAID?

Se eu fizer um RAID 5 de 3 discos, devo escolher PCI de RAID de hardware ou simplesmente um conector PCI SATA?

Igor Z.
fonte
11
Por favor não faça R5, é perigoso
Chopper3
11
Esta pergunta não foi respondida antes? Por exemplo serverfault.com/questions/214/raid-software-vs-hardware
Tommiie
3
Esta é uma pergunta sobre opiniões, você encontrará muitas pessoas torcendo por software e muitas pessoas torcendo por hardware. Na minha opinião, depende. O RAID do software Linux está bem estabelecido e provou seu valor repetidamente, mas cria uma sobrecarga muito leve (que é desprezível, especialmente no RAID 1). O RAID 5 não deve ser usado se você valorizar seus dados por causa do URE, consulte youtube.com/watch?v=A2OxG2UjiV4 Como regra geral, se você usa o RAID 1 e tem a opção entre RAID de hardware barato e RAID de software, opte por software .
Broco
3
@ Tom Essas respostas têm ~ 9 anos e o assunto HW / SW-RAID mudou bastante, eu acho. OP: No seu caso, eu espelharia os discos no software-RAID1, incluindo a instalação do CentOS.
Lenniey 4/10
2
As pessoas sempre afirmam que o RAID de hardware economiza no uso da CPU. Mas o uso da CPU necessário para copiar dados é quase zero. Não consigo imaginar o uso da CPU como um problema no RAID de software.
usr

Respostas:

40

Uma placa RAID de 10 a 20 $ de "hardware" nada mais é do que um blob de driver binário opaco que executa uma implementação de RAID apenas por software. Fique bem longe disso.

Uma placa RAID de 200 $ oferece suporte de hardware adequado (ou seja: um RoC executando outro blob binário opaco, o que é melhor e não é executado na CPU host principal). Sugiro ficar longe dessas placas também porque, sem um cache de write-back, elas não fornecem nenhum benefício tangível sobre uma implementação de RAID por software.

Vale a pena comprar uma placa RAID de 300/400 $ que ofereça um cache de write-back protegido por powerloss, mas não para PC / NAS pequeno, baseado em Atom.

Em resumo: sugiro fortemente que você use o RAID do software Linux. Outra opção a considerar seriamente é uma configuração ZFS espelhada, mas, com uma CPU Atom e apenas 4 GB de RAM, não espera alto desempenho.

Para outras informações, leia aqui

shodanshok
fonte
Obrigado, vou usar o mdadm, você aconselha colocar o sistema em um usb externo e dois discos usados ​​como memórias ou devo instalar o sistema e criar o ataque adicionando o disco? Obrigado
Igor Z.
@ IgorZ. Não está claro para mim como você deseja conectar suas unidades. Na sua postagem, parece que você tem apenas 2 portas SATA, então eu instalaria o sistema operacional em um disco rígido USB ou unidade flash (se seguir a rota do flash USB, compre um pendrive com desempenho decente de gravação aleatória de 4k).
Shodanshok 04/10/19
RoC? O SoC seria um sistema em um chip, ou seja, "um computador pequeno", mas o que é um RoC?
Ilkkachu 04/10/19
POC. Prova de conceito?
precisa saber é o seguinte
11
RoC significa R ajuda o n C quadril. Basicamente, um termo de marketing para identificar um sistema incorporado executando um SO relacionado a RAID com descarregamento de hardware para cálculo de paridade.
21818 shodanshok
11

Vá para o ZFS. Seriamente. É muito melhor em comparação com o RAID de hardware, e a razão é simples: ele usa faixas de tamanho variável, para que os modos de paridade RAID (Z1 e Z2, RAID5 e RAID6) estejam executando o nível @ RAID10, ainda sendo extremamente econômico. + você pode usar o cache flash (ZIL, L2ARC etc) executando @ um conjunto dedicado de pistas PCIe.

https://storagemojo.com/2006/08/15/zfs-performance-versus-hardware-raid/

Há ZFS no Linux, ZoL.

https://zfsonlinux.org/

BaronSamedi1958
fonte
3
Eu normalmente concordo plenamente aqui, mas ele só tem 4GiB de memória RAM para ZFS não pode executar optimamente ...
Josh
11
+1. De qualquer forma, o ZRAID é conhecido por IOPS baixo em comparação com espelhamento + distribuição: basicamente, cada vdev de nível superior tem o desempenho IOPS de um único disco. Dê uma olhada aqui
shodanshok 4/18/18
A última vez que procurei, o ZFS exigiu 1 GB de RAM por TB de RAID, para que o OP não tenha RAM suficiente. Isso mudou?
Mark
2
Acordado. O ZFS é a melhor opção para os dados de arquivamento. O desempenho sempre depende do tamanho da faixa e do tamanho dos blocos que serão gravados no disco, por isso é complicado calculá-lo, mas é muito fácil otimizar o desempenho :) Além disso, o ZFS não foi projetado para virtualização ou IO intensiva carga de trabalho.
Strepsils
11
2Mark: Isso é para capacidade deduplicada.
BaronSamedi1958 /
3

Aqui está outro argumento para o software em um sistema barato.

As coisas quebram, você sabe que é por isso que você está usando o RAID, mas os controladores do RAID também quebram, assim como o RAM, o processador, a fonte de alimentação e tudo mais, inclusive o software. Na maioria das falhas, é simples o suficiente para substituir o componente danificado por um equivalente ou melhor. Sopre uma fonte de alimentação de 100w, pegue uma de 150w e siga em frente. Semelhante com a maioria dos componentes. No entanto, com uma invasão de hardware, agora existem três exceções a esse padrão: controlador de invasão, discos rígidos e placa-mãe (ou outra fonte, se não uma placa de expansão).

Vamos olhar para o cartão de ataque. A maioria das placas de ataque são mal documentadas e incompatíveis. Você não pode substituir um cartão pela empresa xyz por um por abc, pois eles armazenam os dados de maneira diferente (supondo que você possa descobrir quem criou o cartão). A solução para isso é ter um cartão de invasão sobressalente, exatamente idêntico ao de produção.

Os discos rígidos não são tão ruins quanto as placas RAID, mas como as placas RAID possuem conectores físicos, você deve usar unidades compatíveis e unidades significativamente maiores podem causar problemas. É necessário um cuidado significativo ao solicitar unidades de substituição.

As placas-mãe geralmente são mais difíceis que as unidades, mas menos que as placas RAID. Na maioria dos casos, apenas verificar se os slots compatíveis estão disponíveis é suficiente, mas os ataques inicializáveis ​​podem não ter fim. A maneira de evitar esse problema são gabinetes externos, mas isso não é barato.

Todos esses problemas podem ser resolvidos jogando dinheiro no problema, mas para um sistema barato isso não é desejável. As invasões de software, por outro lado, são imunes à maioria (mas não à totalidade) desses problemas, pois podem usar qualquer dispositivo de bloqueio.

A única desvantagem da invasão de software em um sistema barato é a inicialização. Até onde eu sei, o único gerenciador de inicialização que suporta raid é o grub e apenas suporta o raid 1, o que significa que o seu / boot deve ser armazenado no raid 1, o que não é um problema, desde que você esteja usando apenas o raid 1 e apenas um pequeno problema no na maioria dos outros casos. No entanto, o próprio grub (especificamente o bloco de inicialização do primeiro estágio) não pode ser armazenado no ataque. Isso pode ser gerenciado colocando uma cópia sobressalente nas outras unidades.

hildred
fonte
A forma I configurar o arranque RAID 1 era criar uma /bootpartição em cada e uma partição de dados em cada para /(em vez de dedicar todo o disco para a matriz). Desde que você crie uma partição de inicialização separada em cada unidade e execute grub-installcada unidade, todas elas devem ser inicializáveis ​​e o md deve ser capaz de montar a matriz degradada. Eu imagino que funcionaria com outros sabores além do RAID 1 também.
Ntenz 04/10
@ nstenz, você descreveu minha configuração quase exatamente. A partição de dados tem RAID6 e LVM e RAID inicialização tem 1.
Hildred
1
  1. Como outros já disseram, não há benefício para o RAID de hardware e várias desvantagens. Minhas principais razões para preferir o RAID de software é que ele é mais simples e mais portátil (e, portanto, é mais provável que tenha uma recuperação bem-sucedida de vários cenários de falha).

  2. (Também como já foi dito) O RAID 5 de 3 discos é um esquema de RAID muito ruim - é quase o pior de todos os mundos, com muito pouco benefício. Uma espécie de compromisso entre o RAID 0 e o RAID 1 e um pouco melhor do que qualquer um deles, mas essa é a única coisa boa a dizer sobre isso. O RAID mudou para esquemas muito melhores, como o RAID 6.

  3. Meu conselho (hardware):

    • Obtenha uma placa SATA de 4 portas para esse slot PCI, levando você a seis portas SATA totais - uma para uma unidade de inicialização e cinco para unidades de dados. Eu vejo um por ~ $ 15, anunciado como RAID de hardware, mas você pode simplesmente ignorar esses recursos e usá-lo como SATA comum.

    • Obtenha um pequeno SSD para a unidade de inicialização. Sei que ainda existe a percepção de que "os SSDs são muito caros", mas quase não é verdade, e nem um pouco - os 120 GB são muito mais do que você precisa para esta unidade de inicialização e você pode obter um por ~ $ 25.

    • Uma adição opcional, mas muito boa (se o gabinete do seu PC possuir compartimentos de unidade de 3x 5,25 ") é obter um conversor de compartimento de unidade: você pode transformar 3 compartimentos de unidade de 5,25" (óptico) em 5 unidades de carregamento frontal com troca a quente de 3,5 "(HDD) compartimentos, para que você não precise desmontar a máquina (ou até desligá-la) para trocar de unidade (procure por "backplane 5 in 3").

    • Use HDDs de 5x, qualquer que seja o tamanho, no RAID 6 (redundância dupla, espaço utilizável no tamanho da unidade 3x).

  4. Meu conselho (software): consulte o OpenMediaVault para o software OS / servidor de arquivos. É uma "distribuição de aparelhos" perfeita para exatamente esse tipo de uso - baseado no Debian (na verdade, uma porta Linux do FreeNAS baseado em BSD) com tudo pré-configurado para um servidor NAS. Isso torna muito simples a configuração e o gerenciamento de RAID de software (além de LVM, compartilhamentos de rede etc.).

dgould
fonte