Ola amigos,

Ha algum tempo enviei para a lista (a pedidos de colegas) umas notas de 
instalacao sobre como criar sistemas em RAID em distros que nao o faziam 
na instalacao. Eu dei uma revisada e melhorei um pouco a escrita, estou 
enviando o texto abaixo, caso alguem queira hospeda-lo (para facilitar 
as atualizacoes e procuras), eu ficarei muito contente (soh pediria para 
manterem meu e-mail e nome). Sugestoes e correcoes sempre sao MUITISSIMO 
bem-vindas !!!

[]'s,

Soh

                        Instala��o de um Sistema Linux em RAID

                   Autor: Fabiano Felix <[EMAIL PROTECTED]>

Esse tutorial tem a finalidade de auxiliar a instala��o de sistemas Linux em 
RAID manualmente.

1 - Introdu��o

Nos dias atuais, com o advento do Linux nas grandes empresas, faz-se necess�rio 
um aumento no grau de confiabilidade dos sistemas. Um recurso muito utilizado 
para esse fim s�o os dispositivos RAID. Existem v�rios "niveis" de dispositivos 
RAID, bem como tipos diferentes de implementa��es. As mais recomendadas s�o as 
solu��es baseadas em Hardware, por serem mais r�pidas, sendo a performance um 
fator muito importante para a maioria dos sistemas. Por�m o seu custo � muito 
elevado, sendo que uma alternativa vi�vel seria o RAID por Software, que � o 
foco desse texto.

Os exemplos citados no texto baseiam-se em RAID nivel 1 (n�o ser�o explicados 
aqui o conceito e nivel de RAIDs existentes), sendo que s�o v�lidos para todos 
os niveis com pequenas mudan�as.

A id�ia da instala��o do sistema manualmente partiu da necessidade de algumas 
distribui��es n�o o criarem na instala��o (hoje um bom n�mero de grandes 
distribui��es j� permitem a cria��o a partir da instala��o).

Durante o texto ser� levado em considera��o a cria��o do Sistema em RAID 1 com 
dois discos e tr�s pontos de montagem.

2 - Requerimentos para a instala��o

Para a instala��o do Sistema, ser� necess�rio um terceiro disco, que ser� 
utilizado somente durante o processo de instala��o, podendo ser descartado ap�s 
a conclus�o da mesma (n�o h� a necessidade desse disco ser igual aos outros).

Em nosso exemplo, o sistema ter� as seguintes parti��es:

/boot
swap
/

Sendo o tamanho vari�vel conforme a necessidade de cada indiv�duo. Proceda com 
a instala��o normal do sistema.

2 - Compilando o kernel

Para que se possa utilizar o sistema em RAID, o kernel deve ser configurado com 
suporte ao nivel desejado (RAID 1, RAID 5, etc) e com o par�metro 
CONFIG_AUTODETECT_RAID=Y (usado para a montagem autom�tica do array). Algumas 
distribui��es j� tem esses par�metros configurados, n�o necessitando de 
recompila��o do kernel. N�o desmontraremos aqui como compilar o kernel, para 
isso deve-se procurar as refer�ncias sobre o assunto.

A montagem autom�tica do array significa que o sistema, ao carregar, ir� 
inicializar os dispositivos RAID autom�ticamente (incluindo o pr�prio sistema), 
caso contr�rio os dispositivos dever�o ser inicializados manualmente, n�o 
funcionando assim para o Sistema Operacional.

3 - Particionando os discos

Com o sistema j� instalado, criaremos nos discos que far�o parte do array as 
parti��es equivalentes as instaladas.

A tabela seguinte ser� usada como exemplo:

ponto montagem                  tamanho(exemplo)        label da parti��o
===========================================================================
/boot                                   30MB                    83
swap                            dobro da RAM                    82
/                               depende da aplica��o            fd

O label da parti��o � um c�digo que define seu tipo, no exemplo o label 83 � 
equivalente ao Linux Native. O tipo fd � o Linux Raid Autodetect, que � o tipo 
utilizado para a montagem autom�tica do RAID, conforme explicado anteriormente, 
sendo que esse par�metro tamb�m � indispens�vel. As parti��es de boot e swap 
n�o fazem parte do array, pois:

- O setor de boot deve ser uma parti��o prim�ria e �nica, pois quando l�-se a 
MBR o array n�o est� montado;

- N�o faz sentido criar uma �rea de swap em RAID, pois em vez de ganho, poder� 
haver perda de performance.

N�o faz parte do escopo do nosso texto entrar em detalhes do RAID, mas ficam 
algumas dicas importantes:

- As parti��es a serem espelhadas devem ter aproximadamente o mesmo tamanho (de 
prefer�ncia o mesmo);

- Se poss�vel, utilize discos de mesmo modelo e crie as parti��es nas mesmas 
posi��es em ambos os discos.

4 - Criando o dispositivo RAID

O primeiro passo para a cria��o do dispositivo � a cria��o/edi��o de um arquivo 
denominado raidtab, que deve estar localizado em /etc. Abaixo um exemplo 
comentado de arquivo raidtab:

raiddev /dev/md0                        # Nome do dispositivo no sistema
        raid-level      1               # Nivel do RAID
        nr-raid-disks   2               # N�mero de discos no array
        nr-spare-disks  0               # N�mero de discos de paridade, n�o utilizado 
em RAID 1
        chunk-size      4               # Fator de "Blocagem" do array
        persistent-superblock   1       # Usado pelo sistem de autodetect - deve ser 1
        device  /dev/sda3               # Parti��o a ser incluida no array
        raiddisk        0               # Ordem dos discos - 0 indica o primeiro disco
        device  /dev/sdb3               # Parti��o a ser incluida no array
        raiddisk        1               # Ordem dos discos - 1 indica um disco espelho

Para a cria��o do dispositivo, utiliza-se o comando mkraid. Exemplo: mkraid
/dev/md0

Ele ir� ler o arquivo /etc/raidtab e, caso esteja tudo certo, inicializar� o
dispositivo md0.

Com o dispositivo montado, deve-se criar o sistema de arquivos como em uma
parti��o comum. Exemplo:

mkfs -t ext2 /dev/md0

Para parar ou inializar o dispositivo, utiliza-se:
raidstop /dev/md0               # P�ra o dispositivo
raidstart /dev/md0              # Inicializa o dispositivo

O estado dos dispositivos RAID podem ser vistos no arquivo /proc/mdstat. Nele
voc� poder� observar o percentual de replica��o dos dados, se todos os discos
est�o OK, se um array est� funcionando, etc. Um exemplo de saida do arquivo
/proc/mdstat:

cat /proc/mdstat

Personalities : [raid1]
read_ahead 1024 sectors
md0 : active raid1 sda3[0] sdb3[1]
      2884544 blocks [2/2] [UU]

unused devices: <none>

5 - Montando o Sistema em RAID

Com o dispositivo criado e iniciado, vamos agora montar o sistema em RAID. Para
isso, devemos copiar o sistema que instalamos no HD tempor�rio para o(s)
nosso(s) dispositivos. A c�pia n�o pode ser feita por comandos do sistema
(cp,mv), porque eles fazem uma c�pia do tipo RAW. A c�pia RAW, n�o copia
corretamente apontamento de dispositivos, como por exemplo, sockets, sendo que
o sistema n�o funcionar� corretamente. A c�pia deve ser feita pelo TAR. Existem
formas de fazer-mos uma c�pia TAR, sendo que as mais usadas s�o a cria��o de
arquivos e posterior descompacta��o (para que tem espa�o no HD e pouco
processamento), e a c�pia direta, interligando dois comandos TAR com um pipe.

Exemplos:

# utilizando arquivos
tar -cpf etc.tar.gz /etc        #criar um arquivo etc.tar.gz com o diret�rio /etc
tar -xpf etc.tar.gz -C /etc_raid   #descompacta o dir /etc no dispositivo RAID

# C�pia direta
tar -cvf - /etc | tar -xvf - -C /etc_raid  #copia o /etc para o dispositivo RAID

6 - Configurando o sistema para o boot

Com o sistema j� montado, precisamos fazer alguns acertos para fazer o nosso 
RAID inicializ�vel. O primeiro passo � criar o setor de boot dos discos. Para 
criar o setor de boot, deve-se montar a parti��o que foi destinada para boot em 
ambos os discos (certifique-se de j� haver um sistema de arquivos existentes 
nas parti��es). O procedimento � o mesmo para a c�pia do sistema, a diferen�a � 
que ele deve ser executado para TODOS os discos, isto �, cada disco deve ter 
uma c�pia fi�l do setor de boot para que seja garantida a integridade do 
sistema.

Com os arquivos copiados, devemos ajustar agora os nossos arquivos de 
configura��o. Os arquivos e suas respectivas modifica��es s�o:

- /etc/fstab    -       Tabela de pontos de montagem do sistema

Na fstab, devmos trocar as entradas dos pontos de montagem, onde tinh�mos a 
refer�ncia para o disco utilizado na instala��o, devemos colocar uma entrada 
para o nosso dispositivo, lembrando que as parti��es /boot e swap n�o fazem 
parte do array. Vamos a um exemplo:

## Antiga fstab
/dev/hda3       /       ext2    defaults 1 1
/dev/hda1       /boot   ext2    defaults 1 2
/dev/hda2       swap    swap    defaults 0 2

## RAID fstab
/dev/md0        /       ext2    defaults 1 1
/dev/hda1       /boot   ext2    defaults 1 2
/dev/hda2       swap    swap    defaults 0 2

Podemos notar que as parti��es de boot e swap n�o fazem parte do array conforme 
explicado anteriormente). Caso o disco que esteja sendo usado no boot falhar, 
basta modificar os arquivos de configura��o para um outro e o sistema operar� 
normalmente.

- /etc/lilo.conf        -       Arquivo de configura��o do LILO (Boot Manager)

No lilo.conf, devemos trocar a entrada da parti��o raiz do sistema. Um exemplo:

## Antigo lilo.conf
boot = /dev/hda
        image = /boot/vmlinuz-raid
        label = linux_raid
        root = /dev/hda3

## RAID lilo.conf
boot = /dev/hda
        image = /boot/vmlinuz-raid
        label = linux_raid
        root = /dev/md0

No exemplo, o nosso boot aponta para /dev/hda, se esse disco falhar, � s� 
trocar essa entrada para outro boot, por exemplo, /dev/hdc.

Devemos criar um disco de boot para o sistema, pois ele ser� utilizado para 
gravarmos a MBR. Com as altera��es j� feitas, devemos iniciar o sistema com o 
disco de boot (Dica: em algums distribui��es � poss�vel utilizar o pr�prio CD 
para inicializar um sistema instalado) e utilizar o seguinte comando:

lilo

Isso deve gravar as novas configura��es de boot na MBR.

Reinicie o sistema. Ele dever� inicializar normalmente, j� montando os 
dispositivos. Por ser o primeiro boot, os dispositivos RAID inicializar�o o 
processo de sincronismo, o que poder� causar uma perda de performance 
moment�nea. Para visualizar o andamento do processo de sincronismo utilize o 
comando:

cat /proc/mdstat.

Com isso n�s temos um sistema montado em RAID nivel 1. Quaisquer d�vidas, 
crit�cas ou sugest�es ser�o bem-vindas.

Refer�ncias:

Guia do Servidor Conectiva:
http://www.conectiva.com/doc/livros/online/guia_servidor/raid.html
Suporte Conectiva:
http://www.conectiva.com.br/suporte/pr/aplicativos.raid.definicao.html
Root-RAID-HOWTO
http://www.linuxdoc.com/LDP/HOWTO/index.lxp?lxpwrap=HOWTO-INDEX/os%2ehtml#OSRAID



Assinantes em 29/04/2002: 2249
Mensagens recebidas desde 07/01/1999: 164800
Historico e [des]cadastramento: http://linux-br.conectiva.com.br
Assuntos administrativos e problemas com a lista: 
            mailto:[EMAIL PROTECTED]

Responder a