Instalação, configuração, utilização e testes do DRBD 0.7

O DRBD implementa o espalhamento de dispositivos de blocos entre dois servidores em rede TCP/IP e é amplamente utilizado para implementação de alta-disponibilidade na camada de armazenamento. Este artigo irá explicar como instalar, configurar, utilizar e testar o DRBD 0.7, que é a versão estável e que permite implementação ativo/passivo.

[ Hits: 118.018 ]

Por: Leonardo Rodrigues de Mello em 27/07/2006


Usando o DRBD



A partir do momento que o drbd estiver configurado, os discos rígidos individuais de cada máquina não deverão ser utilizados diretamente. Todo acesso deverá ser realizado através do dispositivo "virtual" /dev/drbd0.

As aplicações que são executadas em userland não irão enxergar nenhuma diferença entre o dispositivo drbd e qualquer outro dispositivo de blocos.

Desta forma teoricamente é possível fazer qualquer coisa que se pode fazer com um dispositivo de blocos com o dispositivo drbd.

IMPORTANTE: Para acessar, formatar, montar, particionar e etc o dispositivo drbd, é necessário que a máquina que vá acessar o dispositivo seja primária. O Drbd 0.7 não deve ser usado em duas máquinas como primária ao mesmo tempo, sobre o risco, caso não funcione, de corromper os dados e sistemas de arquivos dos discos.

Formatando o dispositivo criado:

Poderá ser utilizada qualquer ferramenta de criação de qualquer sistema de arquivos.

Neste documento será utilizado o sistema de arquivos ext3 e o utilitário mkfs.ext3.

Na máquina primária execute o comando:

# mkfs.ext3 /dev/drbd0

Montando o dispositivo criado:

Na máquina primária execute o comando:

# mount -t ext3 /dev/drbd0 /mnt

Desmontando o dispositivo criado:

Na máquina primária execute o comando:

# umount /dev/drbd0

Rodando fsck no dispositivo criado:

Na máquina primária execute o comando:

# fsck /dev/drbd0

Alternando entre Primário e Secundário:

Na máquina primária execute o comando:

# drbdadm secondary all

Na máquina secundária execute o comando:

# drbdadm primary all

Desligando o DRBD


O DRBD pode ser desligado de duas maneiras, através da utilização do script de inicialização que se encontra disponível em /etc/init.d/drbd ou através de procedimento manual. Estes procedimentos são necessários para garantir a integridade dos dados entre os servidores.

A utilização do script é a maneira recomendada. Caso ela não funcione corretamente poderá ser utilizado o procedimento manual.

Para parar o drbd é necessário que os dispositivos estejam como secundário e que não estejam sendo acessados pelas aplicações do sistema operacional.

Por este motivo, antes de se parar o drbd é necessário desmontar a partição do dispositivo drbd.

Utilize o seguinte comando para fazer isso:

# umount /dev/drbd0

Utilizando o script de inicialização do DRBD


Agora já é possível parar o serviço através do script.

# /etc/init.d/drbd stop

Para iniciar o serviço utilize:

# /etc/init.d/drbd start

Procedimento manual


Para parar o drbd, torne a máquina secundária:

# drbdadm secondary all

Desligue e desconecte o drbd:

# drbdadm down all

Por fim, remova o módulo:

# rmmod drbd

Página anterior     Próxima página

Páginas do artigo
   1. Sobre este artigo
   2. Introdução
   3. Instalação
   4. Configuração do DRBD
   5. Usando o DRBD
   6. Testando se tudo está funcionando corretamente
   7. Conclusão e referências
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Funtoo Linux - Arquivo /etc/boot.conf

Como personalizar o prompt do shell bash

Prevenindo acidentes com o comando RM

Configurar som (CMI-8738 e VIA AC'97)

Montar MP3 e pendrives USB automaticamente com Hotplug

  
Comentários
[1] Comentário enviado por vhprice em 27/07/2006 - 11:20h

Legal! Muito bem explicado!

[2] Comentário enviado por thelinux em 27/07/2006 - 13:46h

Cara, gostei do teu tuto. Já havia lido sobre isto, mas nunca parei para estudar. Agora tenho como.

Excelente contribuição!

Sinceramente,

thelinux

[3] Comentário enviado por korvoman em 23/11/2006 - 22:02h

Bem explicado e detalhado, parabéns. Implantei o mesmo ambiente no lab da faculdade. Inclui o heartbeat e o apache . Tive um problema, com fstab do nodo primario. A minha pergunta:

http://www.vivaolinux.com.br/perguntas/verPergunta.php?codigo=53214

[4] Comentário enviado por korvoman em 24/11/2006 - 20:32h

Caso alguem tenha o mesmo problema, solucionei acima reconfigurando o Heartbeat, alterando o /etc/ha.d/haresources a conf ficou desta maneira:

nd1 drbddisk::teste Filesystem::/dev/drbd0::/home::ext3 10.0.0.4 apache2

no caso o teste é o nome do resources configurado no /etc/drbd.conf


[5] Comentário enviado por peterpan em 03/01/2007 - 17:05h

Estou começando os estudos sobre o DRBD, e tenho algumas difilcudades, para testes tenho dois pcs com o mandriva 2006 instalado em cada um deles, com apenas a partição hda1 onde esta todos os arquivos. Teria como eu duplicar por completo o hda1 do computador primario no computador segundario. Como ficaria o drbd.conf nesse caso? Nao entendo ql dispositivo é sincronizado com ql... Posso sincronizar com um cabo serial?
Qlqr ajuda agradeço.

[6] Comentário enviado por lipecys em 19/04/2010 - 09:39h

Parabéns pelo artigo!

[7] Comentário enviado por fernando.aviana em 08/07/2010 - 06:44h

Amigos,

Não estou conseguindo fazer funcionar o DRBD no Debian 4...segui esse tuto mas quando vou iniciá-lo me aparece a seguinte mensagem:

Debian:/# drbdadm up all
ioctl(,SET_DISK_CONFIG,) failed: Invalid argument
Lower device is already mounted.
Command 'drbdsetup /dev/drbd0 disk /dev/sda3 internal -1 --on-io-error=detach' terminated with exit code 20

Estou usando a versão 2.6.18-6-686-bigmem do debian com o pacote "drbd0.7-module-2.6.18-6-686-bigmem"

Alguem saberia me ajudar?

[8] Comentário enviado por paulofenano em 07/08/2013 - 15:48h

Boa tarde, parabéns pelo tópico, muito bem explicado. Estou desenvolvendo algumas idéias, por exemplo se houver um servidor principal com o samba instalado nele, configuro o drdb nele e quero colocar um outro server para ser o standby desse, esse segundo teria que estar instalado o samba também? Obrigado


Contribuir com comentário