Software RAID 10 no Linux

2

Durante muito tempo, pensei em mudar para o RAID 10 em alguns servidores. Agora que o Ubuntu 10.04 LTS está ativo, é hora de fazer um upgrade. Os servidores que estou usando são o HP Proliant ML115 ( muito bom valor). Ele tem quatro slots internos de 3,5 ". Atualmente, estou usando uma unidade para o sistema e uma matriz RAID5 (software) para os três discos restantes.

O problema é que isso cria um ponto único de falha na unidade de inicialização. Daí eu gostaria de mudar para uma matriz RAID10, pois me daria melhor desempenho de I / O e mais confiabilidade. O problema é apenas que as placas controladoras boas que suportam RAID10 (como 3Ware) custam quase tanto quanto o próprio servidor. Além disso, o software RAID10 parece não funcionar muito bem com o Grub.

Qual é o seu conselho? Eu deveria continuar rodando o RAID5? Alguém foi capaz de instalar com sucesso um software RAID10 sem problemas de inicialização?

    
por vpetersson 07.05.2010 / 14:18

3 respostas

5

Eu estaria inclinado a ir para o RAID10 neste caso, a menos que você precisasse do espaço extra oferecido pelo arranjo + RAID5. Você obtém a mesma redundância garantida (qualquer unidade pode falhar e a matriz sobreviverá) e redundância ligeiramente melhor nos casos piores (o RAID10 pode sobreviver a 4 dos cenários de 6 "duas unidades que falharam ao mesmo tempo") e não tem a gravação penalidade frequentemente experimentada com RAID5.

É provável que você tenha problemas para inicializar o RAID10, seja implementado como um array aninhado tradicional (dois RAID1s em um RAID0) ou usando o driver RAID10 all-in-one recente do Linux, já que tanto o LILO quanto o GRUB esperam ter todas as informações necessárias para inicializar em uma unidade que pode não ser com RAID0 ou 10 (ou software RAID5) - ela funciona em hardware, pois o carregador de inicialização vê apenas uma unidade e o controlador lida com onde os dados realmente se espalham entre as unidades.

Existe uma maneira fácil de resolver isso: apenas tem uma pequena partição (128MB deve ser mais do que suficiente - você só precisa de espaço para algumas imagens do kernel e arquivos initrd associados) no início de cada uma das unidades e configurá-las como uma matriz RAID1, que é montada como /boot . Você só precisa ter certeza de que o carregador de boot está corretamente instalado em cada unidade, e tudo funcionará bem (assim que o kernel e o initrd forem carregados, eles irão lidar com a localização do array principal e lidar com ele apropriadamente).

O driver de software RAID10 possui várias opções para ajustar o layout de bloco, o que pode trazer benefícios adicionais de desempenho, dependendo do padrão de carga de E / S (consulte aqui para alguns benchmarks simples) embora eu não esteja ciente de nenhuma distribuição que suporte isso para o RAID 10 da instalação ainda (apenas o arranjo aninhado mais tradicional). Se você quiser experimentar o driver RAID10, e sua distro não suportá-lo no momento da instalação, você pode instalar todo o sistema básico em uma matriz RAID1 conforme descrito em / boot acima e construir a matriz RAID10 com o restante do espaço em disco uma vez iniciado para isso.

    
por 07.05.2010 / 15:17
2

Para até 4 unidades, ou quantas unidades SATA você puder conectar à placa-mãe, em muitos casos você será mais bem servido usando os conectores SATA da placa-mãe e o RAID de software Linux MD do que o RAID HW. Por um lado, as conexões SATA on-board vão diretamente para o southbridge, com uma velocidade de cerca de 20 Gbit / s. Muitos controladores HW são mais lentos. E então o software Linux MD RAID é frequentemente mais rápido e muito mais flexível e versátil que o HW RAID. Por exemplo, o layout do Linux MD RAID10-far oferece quase a velocidade de leitura RAID0. E você pode ter várias partições de diferentes tipos de RAID com o Linux MD RAID, por exemplo, um / boot com RAID1 e, em seguida, / root e outras partições em raid10-far para velocidade ou RAID5 para espaço. Um outro argumento é o custo - comprar um controlador RAID extra é muitas vezes mais caro do que apenas usar as conexões SATA on-board;)

Uma configuração com / boot on raid pode ser encontrada no link .

Mais informações sobre o Linux RAID podem ser encontradas no wiki do grupo de kernel Linux RAID no link

    
por 23.04.2011 / 16:04
0

Bem, você praticamente respondeu sua própria pergunta.

  • Você não tem dinheiro para um cartão raid10 de hardware
  • O Grub não suporta a inicialização em uma invasão de software RAID10

Isso implica que você não pode usar o RAID10.

Que tal usar o RAID5 em todos os discos? Isso não parece um servidor high-end (ou tráfego) para mim, então a penalidade de desempenho provavelmente não será tão difícil.

Edit: Eu apenas pesquisei um pouco, e parece que o Grub não pode ler o software raid. Ele precisa de um gerenciador de inicialização em todos os discos que você deseja inicializar (no RAID5: todo disco). Isso parece extremamente desajeitado para mim, você já pensou em comprar um cartão RAID5 usado no ebay?

    
por 07.05.2010 / 14:50