RAID

1. Conceitos Iniciais

O termo RAID ( “Redundant Array of Inexpensive Disks”) foi cunhado na Universidade da Califórnia em Berkeley em oposição a SLED (“Single Large Expensive Disk”). É um sistema de discos rígidos rápido e confiável, por meio de discos individuais.  O RAID trabalha com dois conceitos. O primeiro conceito é a divisão dos dados (data striping), que tem por objetivo aumentar o desempenho da máquina. Com a utilização do sistema de divisão de dados do RAID, os dados a serem armazenados são divididos em vários fragmentos e cada fragmento é armazenado em um disco rígido diferente e ao mesmo tempo. O segundo conceito é o espelhamento, que tem como objetivo aumentar a confiabilidade dos dados armazenados. Por meio do espelhamento, os dados armazenados em um disco rígido são imediatamente copiados para outro disco rígido. Caso o primeiro disco rígido falhe, o segundo entra imediatamente em ação substituindo o disco rígido defeituoso automaticamente.

  • Desempenho: discos são acessados em paralelo, operações de leitura e escrita podem ser feitas simultaneamente em vários discos físicos.
  • Armazenamento: diversos discos físicos podem ser combinados para uso conjunto de sua capacidade de armazenamento.
  • Confiabilidade: os dados são armazenados com redundância (espelhamento ou paridade), permitindo que discos com defeito sejam substituídos sem perda de informação.

2.0 RAID por hardware e software

Sistemas RAID podem ser implementados em hardware ou software.

  • RAID por hardware: realizado pela controladora de discos, é transparente para o sistema operacional. É visível como um único disco e não consome recursos do sistema para a obtenção de redundância ou reconstrução.
  • RAID por software: é feito pelo kernel, não exigindo hardware especial, mas utilizando recursos do sistema para cálculo de paridades e reconstrução do array em caso de inconsistência.

As informações gerais e conceitos sobre RAID contidas neste artigo valem para implementações de hardware e software. Contudo, as informações de configuração são restritas á implementação de RAID por software existente no kernel do Linux.

3.0 Níveis de RAID

Cinco níveis de RAID foram originalmente propostos para organizar discos em diferentes graus de capacidade, redundância e desempenho: RAID1, RAID2, RAID3, RAID4 e RAID5. Adicionalmente, uma configuração não-redundante é conhecida por RAID0. RAID2 não é tecnicamente viável e sua funcionalidade pode ser obtida com outros níveis de RAID.

  • RAID0 (Data striping): o conjunto de discos é visto como um grande disco, sem redundância. Os dados são distribuídos em “chunks” por todos os discos. Quando um disco falha, todos os dados são perdidos.
  • RAID1 (Espelhamento): dados armazenados são duplicados em dois (ou mais) discos. Quando um disco falha, a totalidade dos dados está disponível em outro disco.
  • RAID3 (Striping de dados por bit com paridade em disco dedicado): os dados são distribuídos em bits pelos discos (por exemplo, em um array com 5 discos, dois bits de cada byte são armazenados em cada um dos quatro primeiros discos e dois bits de paridade são armazenados no quinto disco). Usualmente RAID4 é utilizado em vez de RAID3. O Linux não oferece RAID3 por software.
  • RAID4 (Striping de dados de paridade em um disco dedicado): como RAID0, tem informação de paridade armazenada em um disco separado. Quando um disco falha, os dados podem ser recuperados usando a informação de paridade. Apenas um disco pode falhar, ou os dados serão perdidos . Tem penalização de desempenho para acesso a muitos blocos pequenos de dados.
  • RAID5 (Striping de dados com paridade distribuída): como RAID4, mas com a informação de paridade distribuída entre os discos do RAID. Apresenta melhor desempenho ao lidar com muitos blocos pequenos de dados.

A combinação entre RAID0 e RAID1 é conhecida por RAID0+1 ou RAID10, oferece string com redundância total dos dados armazenados.

O Linux fornece ainda uma configuração de RAID chamada RAID linear, semelhante ao RAID0 mas sem striping de dados.

4.0 Utilitários do RAID

Para utilizar RAID por software no Linux, instale o pacote “raidtools”(lembrando que o nome do pacote pode variar entre uma distrubuição e outra). Uma maneira simples de preparar o sistema para utilizar RAID é configurar os dispositivos no momento da instalação do sistema, utilizando as ferramentas do particionador.

A tabela seguinte lista alguns dos arquivos utilizados pelo sistema de RAID usando o distribuição Conectiva Linux:

Arquivo

Descrição

/etc/raidtab

Contém a especificação dos dispositivos de RAID do sistema: nível de RAID, dispositivo de bloco envolvidos, existência de hot-spares, etc.

/proc/mdstat

Contém informação sobre os dispositivos RAID do sistema.

/dev/mdX

Dispositivos de bloco associados aos arrays de discos.

/etc/init.d/raid

Script de inicialização do sistema que ativa os dispositivos RAID.

Comandos importantes na configuração e uso de sistemas RAID incluem:

Comando Descrição Exemplo
raidstart Ativa um dispositivo RAID. raidstart /dev/md0
raidstop Desativa um dispostivo RAID. raidstop /dev/md2
mkraid Cria um dispositivo RAID especificado em /etc/raidtab Mkraid /dev/md1
lsraid Obtém informações sobre dispositivos RAID do sistema Lsraid –A –f –d /dev/md0

5.0 Configuração do RAID

Para configuração manual do RAID por software, os seguintes passos são necessários:

  • Criar o arquivo /etc/raidtab contendo a configuração desejada. O exemplo seguinte ilustra a configuração de um arranjo RAID1 com os dispositivos /dev/sdb1 e /dev/sdc1, reservando dispositivo /dev/sdd1 como hot spare.

raiddev /dev/md0

raid-level1

nr-raid-disks 2

nr-spare-disks 1

persistent-superblock 1

device /dev/sdb1

raid-disk 0

device /dev/sdc1

raid-disk 1

device /dev/sdd1

spare-disk 0

  • Criar o array de discos propriamente dito, com mkraid /dev/md0. Verifique /proc/mdstat para informações sobre o estado dos dispositivos existentes no sistema.
  • Habilite a inicialização automática do serviço com o comando “chkconfig raid add”.

“Hot spare” é um disco reserva que já está presente no sistema e é ativado assim que um defeito é detectado em outro disco.

“Hot swap” são discos que podem ser substituídos fisicamente sem interromper o funcionamento do sistema.

Explore posts in the same categories: Sistemas Operacionais

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s


%d blogueiros gostam disto: