visão global
Existem três tipos comuns de RAID disponíveis:
Software RAID
: Isso significa que seu BIOS e outros sistemas operacionais pensam que você realmente tem dois discos separados, mas puramente no nível do software, o sistema operacional usa algum formato específico de sistema operacional para RAID (espelhamento, distribuição, bits de paridade, o que for) . Todo o processamento é feito pela CPU sem suporte de hardware.
BIOS RAID
: Também conhecido como "RAID falso" ou "RAID de host", isso significa que o firmware da placa-mãe (mais especificamente, o controlador SATA / SAS) tem suporte explícito para o reconhecimento de dispositivos RAID. No nível do dispositivo lógico ( lun
), seus vários discos rígidos aparecerão como uma única unidade para o sistema operacional. Este é basicamente o controlador SATA / SAS dizendo "Eu realmente só tenho um disco rígido. Bem, na verdade são dois, mas shhhh, é apenas um, confie em mim". Em outras palavras, o sistema operacional pode dizerque é uma configuração de RAID, mas o sistema operacional * não é responsável pelo formato em disco da paridade / distribuição de RAID / etc. No entanto, mesmo nesse modo, a CPU faz todos os cálculos para bits de paridade e distribuição. A placa-mãe, o BIOS e o controlador SATA têm lógica suficiente para "combinar" fisicamente os dispositivos e definir um formato em disco para o RAID. Mas eles não possuem um processador dedicado para fazer os cálculos e dependem do software do sistema operacional para solicitar à CPU que faça isso, e é por isso que você ainda precisa informar ao Linux sobre o RAID do BIOS. (Intel Matrix / RST é um tipo de BIOS RAID).
Hardware RAID
: É aqui que você tem um chip dedicado cujo único objetivo é processar os dados necessários para o RAID. O chip pode ser bastante poderoso; alguns controladores RAID de hardware, na verdade, possuem um chip dual-core, semelhante a CPU, embora seja especificamente otimizado para executar um sistema operacional incorporado que é MUITO rápido em fazer cálculos RAID, como bits de paridade para RAID-5 ou distribuição para RAID -0. Os discos rígidos são fisicamente conectados à placa RAID, que fornece um controlador SATA / SAS, geralmente um cache de leitura e gravação em DRAM ou Flash, enfileiramento de comandos nativo e um processador central integrado que faz os cálculos mais matemáticos. Esses chips de hardware custam entre US $ 150 no nível básico e muitos milhares para backplanes RAID de data center industrial.
Compatibilidade
Em geral, cada tipo de RAID é "vinculado" a algum aspecto específico que, quando esse aspecto muda, você enfrenta problemas de compatibilidade.
O RAID de software está vinculado ao sistema operacional que definiu o formato RAID. Às vezes, entre duas versões diferentes do mesmo sistema operacional, o formato RAID é interrompido, causando incompatibilidade. Embora seja conceitualmente possível que qualquer formato RAID de software seja suportado por qualquer outro sistema operacional, já que é apenas software , na prática, a maioria dos sistemas operacionais apresenta formatos RAID incompatíveis que somente esse sistema operacional pode reconhecer. No entanto, a compatibilidade mais ampla conhecida são os formatos RAID usados nativamente pelo kernel Linux ( md
como você está discutindo no OP), que também pode reconhecer o software RAID do Windows, chamado Dynamic Disks.
O RAID do BIOS está vinculado à placa-mãe que você possui. Pode ser possível mover unidades formatadas com um formato RAID BIOS específico para outra placa-mãe com uma solução RAID BIOS similar; por exemplo, Intel RST para outro sistema com RST. Mas você precisará pesquisar cuidadosamente isso antes de fazer uma jogada, para garantir que seja compatível se você se importar com isso.
O RAID de hardware está vinculado a esse controlador de hardware específico ou a uma série de controladores de hardware que são explicitamente declarados pelo fabricante como compatíveis. Alguns fornecedores mantêm um formato de disco RAID de hardware muito consistente, suportado por muitas gerações de controladores; outros alteram o formato com mais frequência. Novamente, você terá que pesquisá-lo caso a caso.
atuação
O desempenho depende muito de como você configura os parâmetros básicos da matriz RAID e menos da solução específica. Em geral, os controladores RAID de hardware têm o "teto" mais alto para o desempenho máximo; eles também não taxam sua CPU quase tanto quanto as outras soluções. Mas se você escolher o tipo de RAID errado para sua carga de trabalho, o tamanho de faixa incorreto ou a abordagem de cache incorreta, um controlador RAID de hardware também poderá ser extremamente lento, mais lento que uma das unidades em execução no modo não RAID. O mesmo vale para as outras soluções, que também podem ser extremamente lentas.
O RAID de software é mais adequado para a configuração RAID-1, pois o espelhamento é uma cópia simples dos mesmos dados para duas unidades e não há bits de paridade para calcular. RAID-5 no software RAID é horrível.
O desempenho do BIOS RAID é geralmente comparável ao Software RAID, mas alguns controladores e formatos de disco do BIOS RAID são conhecidos por apresentarem erros ou apresentam desempenho ruim. Em geral, se você tiver que escolher entre RAID por software e RAID por BIOS, o primeiro é um pouco mais promissor para o desempenho, especialmente se você estiver executando uma distribuição recente do Linux.
O desempenho do RAID do hardware pode ser incrivelmente rápido devido ao poder de processamento otimizado do processador do controlador RAID, que, como eu disse, é projetado para alto rendimento e pode realmente vir como um chip de vários núcleos - portanto, esse é um ferro muito sério. A principal desvantagem é que você perde flexibilidade - você não pode simplesmente colocar as unidades em outro computador sem um controlador RAID de hardware - e as despesas. O RAID de hardware é o melhor nível para usar o RAID-5 ou RAID-6, especialmente se você tiver muitos discos (4 ou mais).
No geral
Embora o BIOS RAID seja suportado pelo Linux, não posso recomendar que você o use.
Agora, para responder diretamente às suas perguntas, depois que eu lhe der a resposta prolongada:
O que o RSTe me oferece em comparação com o RAID comum do software Linux?
Veja as comparações acima entre o software RAID e o BIOS RAID. "RSTe" é uma instância do BIOS RAID; O md
RAID do Linux sem o -e imsm
é uma instância do RAID de software.
Quando no modo RSTe, o caminho de E / S RAID real (ou seja, espelhamento e distribuição) é tratado pelo md do Linux ou pelo BIOS.
Se você quer dizer o caminho dos dados, ele sempre é tratado pela CPU (e, portanto, pelo sistema operacional), a menos que você tenha uma placa RAID de hardware dedicada. Eu não acho que essas placas sejam instaladas em nenhuma placa-mãe, embora alguns chipsets de servidor de ponta possam me surpreender ...
Em particular, quando eu uso "matrix RAID" (ou seja, o RAID cobre partições específicas em vez de discos inteiros), preciso instalar manualmente o grub nos dois MBRs?
Não. Na verdade, você nunca precisa instalar o GRUB nos dois MBRs. Vamos considerar caso a caso:
RAID de software: Escolha um disco arbitrariamente para instalar o GRUB e defina-o na ordem do BIOS para que ele inicialize primeiro. Lembre-se, você pode espelhar partições individuais, se desejar, para que os discos não precisem ser um pouco idênticos no RAID de software. Pode-se ter um MBR com um gerenciador de inicialização e nada pode ter no MBR.
RAID do BIOS: O BIOS informará que é um "disco" (na verdade, será chamado de matriz RAID), para que você não escolha onde instalar o GRUB. Quando você instala o Linux, o MBR (incluindo o carregador de inicialização) e todos os outros setores de ambos os discos serão copiados entre os dois discos. Portanto, diferentemente do RAID de software, o BIOS RAID impõe que ambos os discos tenham de ser bloco por bloco idêntico, porque você não pode separá-los como dois dispositivos lógicos; o controlador de disco diz que eles são UM dispositivo lógico, não dois. Então você não pode simplesmente dizer "Quero gravar alguns dados na unidade 0, mas não na unidade 1". Não é possivel. Mas é inteiramente possível com o RAID de software.
RAID de hardware: O BIOS informará que é um "disco" e, no que diz respeito ao BIOS, nem sequer está ciente de que você está lidando com vários discos. O controlador RAID abstrai completamente todos os detalhes do RAID do sistema operacional e do BIOS, exceto na medida em que você pode configurar alguns controladores RAID de hardware usando algum tipo de protocolo personalizado no sistema operacional. Mas os dispositivos são completamente inseparáveis da camada de software, semelhante ao BIOS RAID.
Editar: Atualizando para obter mais respostas para perguntas
Ainda não entendi algumas coisas. Primeiramente, sobre um RAID do BIOS: posso construí-lo usando o mdadm, para que o Linux não oculte os discos subjacentes.
É estranho e difícil de explicar. Basicamente, os discos aparecem como um em determinadas camadas e como dois em outras camadas. Mas aposto que, com o BIOS RAID, cada disco não terá seu próprio nó de dispositivo separado, por exemplo, /dev/sda
e /dev/sdb
. Se isso acontecer, bem, o BIOS RAID é diferente do que eu vi.
sobre grub e MBRs: se um RAID cobre partições em vez de discos, ainda posso ver os discos subjacentes. O MBR não está sob RAID e, portanto, você precisa instalar o carregador de inicialização duas vezes para poder inicializar em caso de falha no disco. Isso está correto?
Ela não ferir a instalar outra cópia, mas em casos de falha no disco, inicialização vai ser a menor das suas preocupações. Em resumo, vá em frente e faça se quiser, mas não é a coisa mais importante. Instalar o grub de um CD ao vivo em um disco rígido é fácil.
Os discos no RAID (especialmente se forem da mesma marca e modelo, produzidos na mesma fábrica e em operação um ao lado do outro na mesma temperatura) provavelmente falharão em rápida sucessão, um após o outro. Portanto, se um disco falhar, provavelmente não é bom apenas encolher os ombros e colocar um novo disco e iniciar a reconstrução: há uma chance razoável de que, durante a reconstrução, o último disco contendo uma cópia consistente dos dados falhe. Nesse ponto, quando você desce para o último disco restante, eu recomendaria que um especialista (ou faça você mesmo se você for bom em hardware) remova os pratos do disco original, compre um novo disco de marca / modelo idêntico , coloque os pratos lá e leia os dados usando o novo disco. Isso é caro e demorado,
Então, são cinco perguntas que eu respondi para você; se você encontrou algum valor nessas informações, marque a resposta adequadamente. Obrigado.
mdadm
, para que o Linux não oculte os discos subjacentes. Em segundo lugar, sobre o grub e os MBRs: se um RAID cobre partições em vez de discos, ainda posso ver os discos subjacentes. O MBR não está sob RAID e, portanto, você precisa instalar o carregador de inicialização duas vezes para poder inicializar em caso de falha no disco. Isso está correto?