Raid 1 em 5 minutos e descanso por 3 meses

Aqui será mostrado como montar um serviço de RAID nível 1 em apenas 5 minutos. Para os desavisados, RAID (Redundant Arrays of Inexpensive Disks) é um serviço que nos provê espelhamento entre dois discos de forma transparente, ou seja, o que é gravado num, é gravado noutro.

[ Hits: 60.491 ]

Por: Eduardo Assis em 27/04/2004 | Blog: http://www.proredes.com.br


Configuração



Detalhe muito importante:
OS DISCOS (ou) PARTIÇÕES TEM QUE SER DO MESMO TAMANHO.

Mostrarei como criar RAID no mesmo HD. sendo assim possível fazer com HDs separados (lembrando que o Linux enxerga as partições como se fossem HDs separados):

/swap     500MB
/hda4      3 GB
/hda2      1 GB
/hda3      1GB 


Iremos usar as partições hda2 e hda3 para o RAID.

Dependências


É necessário que você tenha instalado na sua distribuição o pacote raidtools. Consulte os sites www.rpmfind.net ou www.apt-get.org para encontrar o pacote correto para seu Linux (ou recorra aos CDs de instalação).

Primeiramente edite o arquivo /etc/raidtab (provavelmente ele ainda não existe):

raiddev /dev/md0
        raid-level              1
        persistent-superblock   1
        chunk-size              32
        nr-raid-disks           2
        device                  /dev/hda2
        raid-disk               0
        device                  /dev/hda3
        raid-disk               1

Onde:
raid-level 1 - Mostra o nível de RAID (1 - 5).

Execute o comando:

# mkraid /dev/md0

md0 - Partição onde serão somados os HDs.

Criando o sistema de arquivos:

# mke2fs -j /dev/md0

Crie um diretório para acessar o RAID:

# mkdir /mnt/raid

Montando o RAID:

# mount -t ext3 /dev/md0 /mnt/raid

Adicione essas linhas no /etc/fstab:

/dev/md0   /mnt/raid   ext3   defaults   0  0

Na hora que você digitar:

# mkraid /dev/md0

Ele irá sincronizar os HDs.

Para verificar a sincronização, execute o comando:

# cat /pro/mdstat

Comandinho legal para ficar vendo a sincronização:

$ while [ 1 ]; do clear; cat /proc/mdstat; sleep 1; done;

Verificando o status do RAID:

# lsraid -p
[dev9,0] /dev/md0   488B4B29.3A4B6CB9.24B0363E.A2BFF6BC online
[dev3,2] /dev/hda2   488B4B29.3A4B6CB9.24B0363E.A2BFF6BC good
[dev3,3] /dev/hda3   488B4B29.3A4B6CB9.24B0363E.A2BFF6BC good


Simulando uma falha:

# raidsetfaulty /dev/md0 /dev/hda2
# lsraid -p
[dev9,0] /dev/md0   488B4B29.3A4B6CB9.24B0363E.A2BFF6BC online
[dev3,2] /dev/hda2   488B4B29.3A4B6CB9.24B0363E.A2BFF6BC failed
[dev3,3] /dev/hda3  488B4B29.3A4B6CB9.24B0363E.A2BFF6BC good


Provavelmente seu sistema continuará funcionando, sendo assim possível fazer a troca.

Voltando o HD:

# raidhotadd /dev/md0 /dev/hda2
# lsraid -p
[dev9,0] /dev/md0   488B4B29.3A4B6CB9.24B0363E.A2BFF6BC online
[dev3,2] /dev/hda2   488B4B29.3A4B6CB9.24B0363E.A2BFF6BC good
[dev3,3] /dev/hda3   488B4B29.3A4B6CB9.24B0363E.A2BFF6BC good


Abraços,
tucs

   

Páginas do artigo
   1. Configuração
Outros artigos deste autor

Configuração do Speedy Home da Telefônica (ou Velox)

Compartilhando acesso à internet com iptables

Autenticando usuários Windows no Linux (PDC)

Configurando mais de um IP por placa de rede

Configurando um servidor de e-mail para pequenas redes

Leitura recomendada

Upgrade Debian 4.0 (etch) para 5.0 (lenny) - 9 passos para um upgrade feliz

Atributos de arquivos no Linux

Xen - xl.conf - Configuração do Host

Configurando o modem ZTE MF626 com Vivo3G no Debian

Recebendo notificações de seus servidores no seu celular e e-mail

  
Comentários
[1] Comentário enviado por fabio em 27/04/2004 - 23:20h

Olá Tucs, muito útil seu artigo, porém a estrutura do /etc/raidtab ficou meio nebulosa sob o ponto de vista dos mortais. Teria como explicar melhor o que significam os parâmetros?

[]'s

[2] Comentário enviado por jeffestanislau em 28/04/2004 - 07:55h

Realmente se você puder explicar estes parâmetros, esta parte será melhor entendida!!!

[]´s

[3] Comentário enviado por rjacomel em 28/04/2004 - 08:35h

Dica excelente... Simples e funcional!

Parabéns!

[4] Comentário enviado por agk em 28/04/2004 - 08:40h

Excelente artigo!
Para simplificar para quem está começando a fazer raid em seus servidores você poderia explicar os sistemas de raid 1 a 5, mostrando qual a finalidade de cada um. Li um artigo muito bom sobre isso em uma revista do linux, não lembro qual foi a edição, mas se achar eu posto aqui para vc's.

[ ]'s

[5] Comentário enviado por tucs em 28/04/2004 - 08:57h

Peços desculpas, pois quando escrevi este artigo, foi pensando em mostrar uma forma facil de configurar o RAID 1 e naum explicar as diferenças entre RAIDS (1-5), pois quando procurei material na net achei muita explicação e pouca pratica.
Mas para quem quer entender, peco que se redirecione para o site da conectiva.
http://www.conectiva.com/doc/livros/online/9.0/servidor/raid.html
Aqui fala bastante.
O objetivo era fazer uma conf. em 5 minutos e poder ficar tranquilo por um bom tempo.
Lembrando que com o RAID 5, temos que ter 3 HDs, (minimo) e ser der problemas em 2 HDs ao mesmo tempo vc terá que montar novamente um RAID 5 para poder ler aquele HD que ficou salvo.
Abraços
tucs

[6] Comentário enviado por macroney em 28/04/2004 - 10:44h

o sistema tá instalado no /dev/md0 ?
ou no /dev/hda4 ?

[7] Comentário enviado por tucs em 28/04/2004 - 10:51h

/dev/hda4
md0 é o representante do hda2 e hda3

Abracos
tucs

[8] Comentário enviado por RootUser em 28/04/2004 - 16:37h

Excelente cara ... muito bom mesmo ... vc tem razao o material encontrado na net tem muita teoria e pouca pratica sobre o RAID .... excelente artigo!!!!

[9] Comentário enviado por cherokee em 28/04/2004 - 19:14h

very good! já estou me beneficiando deste artigo! Que esta comunidade continue assim, participativa. Parabéns!

[10] Comentário enviado por brasilbr em 29/04/2004 - 08:07h

nao entendi a parte de "descanso por 3 meses"
:)

[11] Comentário enviado por tucs em 29/04/2004 - 08:15h

É que na verdade vc vai ganhar uns meses sem ter que mexer naquela maquina principalmente se o erro for no HD.

Abracos

tucs

[12] Comentário enviado por mselecto em 20/05/2004 - 18:09h

Olá Tucs,

Gostei muito do artigo, parabéns!!! e de ajuda assim que todos precisamos.

Qual a sua distribuição linux, Tucs?

Estou usando o Mandrake 9.1, e não achei o comando lsraid. Todo o resto funciona, mas não consigo testar a falha e a recolocação de um novo disco no lugar do que falhou.

O pacote RPM que vem com a distribuição não instalou esse comando.
(raidtools-0.90-12mdk)

Sabe se existe versão mais atual? não achei na NET.

Abraços,

Mselecto

[13] Comentário enviado por zerobala em 25/05/2004 - 09:04h

Muuuuuito boa a "receitinha de bolo" : D... só queria saber uma coisa: dá pra confiar 100% no RAID lógico? É q estou instalando em um servidor com 2 HD´s novos de 120 GB, num servidor Samba para toda minha rede, cerca de 100 lusers, e portanto gostaria de saber se dá pra ficar realemente tranquilo com ele...

[]´s

ZeroBala

[14] Comentário enviado por tucs em 25/05/2004 - 09:13h

Bem eu tenho raid em todos os 20 servidores e fico muito tranquilo ... e agora estamos colocando cluster de HA no mais criticos ... bem dai sei que poderei dormir bem, pois tenho o celular e um beep da empresa.

Abracos

tucs

[15] Comentário enviado por fabio_batista em 09/07/2004 - 04:46h

Muito legal mesmo!

Por acaso eu estava instalando o novo servidor da empresa hoje, e uma coisa que eu ainda não havia pensado era em usar RAID. ;)

Talvez todos já saibam, mas em algumas distrubuições é possível configurar o RAID no momento da instalação (o instalador do Fedora, Anaconda, permite).

Fiquei apenas com uma dúvida: uma vez montado o RAID1, existe como passar para RAID0 sem traumas, ou vai ser necessária uma reformatação?

[16] Comentário enviado por pcolares em 02/09/2004 - 17:13h

caro tucs
parabéns pelo arqtigo... amndou muito bem
tenho uma dúvida a respeito do raid 1, consigo fazer do disco inteiro, incluindo o / ??

[17] Comentário enviado por tucs em 02/09/2004 - 17:22h

Claro ... na verdade a ideia é essa
Vc com 2 discos e contendo o sistema Linux, dai caso 1 pare o outro assume.

Abraços

Eduardo Assis

[18] Comentário enviado por pcolares em 03/09/2004 - 08:36h

Perfeito, é isso mesmo que pretendo fazer.
O detalhe é o /boot, posso colocálo tb no raid??

Obrigado

[19] Comentário enviado por rjardim em 17/10/2004 - 16:30h

posso utilizar hds Serial ATA???

[20] Comentário enviado por cobra1828 em 10/03/2005 - 23:46h

Ae pessoal, achei de mais essa exclicação do nosso amigo tcus sobre o RAID. Só fiquei com 2 duvidas.

Quando 1 dos HD der problema, ele vai ficar com status "failed" sozinho ?

E quando eu colocar o HD novo(zero bala e não formatado), como eu faço para o raid clonar os dados do hd atual para o hd zero ?
Qualquer coisa, meu e-mail é [email protected]

Abraço

[21] Comentário enviado por iuricarraro em 15/04/2005 - 12:19h

Muito util o artigo, mas eu gostria de saber se posso configurar o RAID para ser executado apenas de tempos em tempos e não toda hora.
Queria saber tbm se eu posso executar o RIAD manualmente, caso eu queria parar o serviço (acho que é um serviço), e mais tarde acionar ele manualemnte. Posso? Como?
Outra duvida, tenho o HD do sistema e o HD de backup só com 2 HDs posso fazer isso?

[22] Comentário enviado por clpinformatica em 27/05/2005 - 09:31h

blz fiz como esta escrito so que simulo um erro no HD blz ele fica assim
dev 9, 0] /dev/md0 CB428824.E67A522A.10596FFA.BEDF992E online
[dev 3, 3] /dev/hda3 CB428824.E67A522A.10596FFA.BEDF992E good
[dev ?, ?] (unknown) 00000000.00000000.00000000.00000000 missing
[dev 22, 2] /dev/hdc2 CB428824.E67A522A.10596FFA.BEDF992E unbound
ai vou e tento voltar o HD com o comando
raidhotadd /dev/md0 /dev/hdc2
ele ma da uma mensagem
[[email protected] root]# raidhotadd /dev/md0 /dev/hdc2
/dev/md0: can not hot-add disk: invalid argument.
quando reinicio a maquina ele da uma mensagem que o kernel nao suporta o raid o que pode ser

[23] Comentário enviado por cvs em 26/11/2005 - 22:02h

É, quando eu reinicio a maquina ele não monta automatico o raid que eu fiz... e quando dou um mount -a ele aparece:

[email protected]:~# mount -a
mount: /dev/md0: can't read superblock
mount: /dev/md1: can't read superblock

Porque fiz dois... de duas particoes:

[email protected]:~# cat /etc/raidtab
raiddev /dev/md0
raid-level 1
persistent-superblock 1
chunk-size 32
nr-raid-disks 2
device /dev/hda5
raid-disk 0
device /dev/hdb5
raid-disk 1
raiddev /dev/md1
raid-level 1
persistent-superblock 1
chunk-size 32
nr-raid-disks 2
device /dev/hda6
raid-disk 0
device /dev/hdb6
raid-disk 1

[24] Comentário enviado por rikatz em 30/11/2005 - 11:14h

Bom, como eu tava discutindo com o cvs no IRC, faltou dizer que toda vez que você reseta a máquina, deve iniciar o raid novamente, com o raidstart /dev/md0.

Assim, o ideal, ao invés de colocar no /etc/fstab (que acaba nem funcionando mesmo...) é colocar no rc.local a sequencia de comandos:
raidstart /dev/md0
mount -t <tipo> /dev/md0 /mnt/raid

Flws


[25] Comentário enviado por Herr_Filip em 12/12/2005 - 10:14h

perguntinha básica...

supondo que eu espelhei /dev/hda1 e /dev/hda2, no raid /dev/md0
para gravar na partição "principal" (posso chamar assim?), e consequentemente espelhar na outra partição, eu devo mandar gravar o dado em /dev/hda1, ou /dev/md0, ou tanto faz?
valeu!

[26] Comentário enviado por aluisiogouveia em 20/12/2005 - 15:12h

Este artigo me ajudou muito, tenho 5 maquinas com fedora3 rodando com este modelo de raid1, coloquei a linha no fstab e ao reiniciar a maquina, a particao e montada automaticamente numa boa, mas no fedora4 eu to apanhando, vou tentar mais uma vez se nao der vou colocar no rc.local msm...

[]'s

[27] Comentário enviado por alexandrecorrea em 26/12/2005 - 04:33h

o pacote raidtools está depreciado, use o mdadm no lugar !! fedora 3 pra frente já nao tem o raidtools mais !!

mdadm --help
mdadm --help-options


abraços

[28] Comentário enviado por aluisiogouveia em 29/12/2005 - 16:39h

Estou testando o filesystem reiserfs com raid baseado neste tutoriol, mas ao tentar montar, o sistema retorna o seguinte erro:

fox:/ # mount -t reiserfs /dev/md0 /raid/
mount: wrong fs type, bad option, bad superblock on /dev/md0,
missing codepage or other error
In some cases useful info is found in syslog - try
dmesg | tail or so

o raidtools nao eh compativel com reiserfs?

[29] Comentário enviado por Crash  em 19/01/2006 - 12:47h

Fala velho, seguinte usa esse comando aqui:

mkfs.reiserfs /dev/md0
ai vc ja pode montar: mount /dev/md0 /raid/

Assim ele ja coloca no dispotivo o sistema de arquivos e vc num precisa passar paramentro para montar

[email protected]:/# mkfs.reiserfs /dev/md0
mkfs.reiserfs 3.6.19 (2003 www.namesys.com)

Guessing about desired format.. Kernel 2.4.31 is running.
Format 3.6 with standard journal
Count of blocks on the device: 1048192
Number of blocks consumed by mkreiserfs formatting process: 8243
Blocksize: 4096
Hash function used to sort names: "r5"
Journal Size 8193 blocks (first block 18)
Journal Max transaction length 1024
inode generation number: 0
UUID: 21655d25-4568-4db0-9f75-2007bf8133c1
ATTENTION: YOU SHOULD REBOOT AFTER FDISK!
ALL DATA WILL BE LOST ON '/dev/md0'!
Continue (y/n):y
Initializing journal - 0%....20%....40%....60%....80%....100%
Syncing..ok

Tell your friends to use a kernel based on 2.4.18 or later, and especially not a
kernel based on 2.4.9, when you use reiserFS. Have fun.

ReiserFS is successfully created on /dev/md0.

[email protected]:/# mount /dev/md0 /home/
[email protected]:/# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 4.7G 1.7G 3.0G 37% /
/dev/hdc 638M 638M 0 100% /mnt/cdrom
/dev/md0 4.0G 33M 4.0G 1% /home

[30] Comentário enviado por msmadela em 05/05/2006 - 11:52h

Olá, estou tendo problemas com compartilhamentos SMB em partições RAID. Quando um Windows Cliente cria ou deleta pastas, preciso sempre mandar a atualizar a tela (F5) para visualizar as mudanças. Ex: Crio uma nova pasta mas não aparece a caixa de dialogo para dar nome a pasta. Preciso apertar o F5 e depois a nova pasta surgirá com o nome "Nova pasta". Ao deletar uma pasta ou arquivo é a mesma coisa. O arquivo só some quando teclo F5.
Em partições não raid isso não ocorre. Alguem teria uma dica?
Abcs

[31] Comentário enviado por better em 04/09/2006 - 16:17h

muito bom seu artigo ta de parabens ^^

[32] Comentário enviado por alex_luiz em 09/05/2009 - 13:25h

Olá Tucs,

Muito legal seu artigo.
Tenho uma dúvida:

Tenho uma máquina que já tem um sistema instalado (Debian 5.0) no /dev/hda e gostaria de fazer o RAID1 do hda para o hdb .
Como seria ???

[33] Comentário enviado por robsonsbrasil em 28/06/2009 - 22:35h

Caros colegas,
Já venho trabalho com raid há muito, o artigo do tucs veio a acalhar aqueles que estão iniciando no raid, e como ele mesmo falou é uma coisa prática. Quero lembrar aos amigos que raide é espelho, tudo que ocorrer no primário (principal) vai refletir nos alternativos, lembro também que o dispositivo espelho (alternativo) deve ser maior ou igual ao espelhado (primário).
Uma boa dica que deixo com os amigos é criar um log onde ira armazenar todo o processo raid para um bom acompanhamento e aprendizado.

[]'s

[34] Comentário enviado por aalves em 01/09/2010 - 11:11h

Olá, muito bom o artigo, porém estou com dificuldades para instalar o pacote raidtools, estou utilizando o seguinte comando:

"apt-get install raidtools"

mas me dá o seguitne erro:

Impossível achar pa"cote raidtools"


Obrigado pela ajuda


Contribuir com comentário