Cluster de alta disponibilidade para servidores web com Debian 7.1 + Corosync + Pacemaker + DRBD

Tutorial completo sobre Cluster de Alta Disponibilidade (HA) Debian Wheezy 7.1 + Corosync + Pacemaker + DRBD.

[ Hits: 58.655 ]

Por: Danilo Menzanoti Fugi em 09/03/2015 | Blog: http://www.drmusical.vai.la


Implementação



A implementação do cluster foi realizada inicialmente em máquinas virtuais, para testes, visando fácil locomoção, ambiente físico reduzido e clonagem dos nós é feita de forma rápida e confiável.

A máquina física hospedeira das virtuais utiliza processador Intel i3, com 4GB de memória RAM e HD de 1TB, cada máquina virtual possui 512MB de memória RAM, HD de 8GB e 02 placas de rede, salientando que na instalação do Debian 7.1 utilizaremos uma partição do HD para alocar o diretório /var, a qual será replicada no final das configurações.

As configurações das máquinas são mostradas abaixo:
  • Máquina 01: Debian 7.1, hostname no01, IP eth0 10.0.2.15/24 (recebido via DHCP da máquina hospedeira que faz o NAT para acesso a internet) IP eth1192.168.0.1/24 (rede interna), domínio: dominio.com.br.
  • Máquina 02: Debian 7.1, hostname no02, IP eth0 10.0.2.15/24 (recebido via DHCP da máquina hospedeira que faz o NAT para acesso a internet) IP eth1192.168.0.2/24 (rede interna), domínio: dominio.com.br.
  • Máquina 03: Debian 7.1, hostname no03, IP eth0 10.0.2.15/24 (recebido via DHCP da máquina hospedeira que faz o NAT para acesso a internet) IP eth1192.168.0.3/24 (rede interna), domínio: dominio.com.br.

Os ajustes realizados nos nós foram feitos em apenas um nó e copiados via SSH para os outros nós, garantindo a não ocorrência erros de configurações diferentes. Atualização de repositórios de pacotes no arquivos "sources.list" e atualização com o comando:

# aptitude update && aptitude -y dist-upgrade

Ajuste no arquivo /etc/hosts, onde foram acrescentados os nós do cluster:

192.168.0.1   no01.dominio.com.br   no01
192.168.0.2   no02.dominio.com.br   no02
192.168.0.3   no03.dominio.com.br   no03

Assim, passamos para a instalação dos pacotes essenciais ao cluster:

# aptitude install -y corosync pacemaker ssh openssh-server

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Arquitetura do Cluster de Alta Disponibilidade
   3. Os Softwares Corosync, Pacemaker e Distributed Replicated Block Device (DRBD)
   4. Implementação
   5. Configurações
   6. Configuração do DRBD
   7. Conclusão
Outros artigos deste autor

Configurando servidores DHCP, BIND, Squid, Sarg, Samba e algumas regras IPtables

MikroTik RouterOS 5.20 para provedores - Tutorial completo

Montagem de Cluster Beowulf

Leitura recomendada

Instalando KDE 3.4 no Kurumin/Debian

Instalando e configurando um Webserver

Local Web Server visível na Internet com DynDNS

MaraDNS: Simples - Seguro - Robusto (parte 2)

Compartilhando diretórios em rede com o NFS

  
Comentários
[1] Comentário enviado por fabio em 09/03/2015 - 10:16h

Excelente artigo, meus parabéns pelo trabalho!

[2] Comentário enviado por thyagobrasileiro em 10/03/2015 - 18:07h


Favoritado!

Irei tentar recriar no CentOS

[3] Comentário enviado por danilofugi em 10/03/2015 - 19:06h


[1] Comentário enviado por fabio em 09/03/2015 - 10:16h

Excelente artigo, meus parabéns pelo trabalho!


Obrigado!
ajudando a comunidade!

[4] Comentário enviado por danilofugi em 10/03/2015 - 19:07h


[2] Comentário enviado por thyagobrasileiro em 10/03/2015 - 18:07h


Favoritado!

Irei tentar recriar no CentOS


Obrigado, depois posta ai os resultados!

[5] Comentário enviado por rodrigo.kiyoshi em 10/03/2015 - 21:33h

Olá,
Vale ressaltar que, para este cenário, o uso de 3 interfaces de rede é o recomendável, em virtude do ip virtual.
O fato de não estar utilizando o recurso stonith, em caso de split brain (drbd), a intervenção manual se faz necessária.
Do mais, o artigo tá show de bola!

[6] Comentário enviado por danilofugi em 10/03/2015 - 21:49h


[5] Comentário enviado por rodrigo.kiyoshi em 10/03/2015 - 21:33h

Olá,
Vale ressaltar que, para este cenário, o uso de 3 interfaces de rede é o recomendável, em virtude do ip virtual.
O fato de não estar utilizando o recurso stonith, em caso de split brain (drbd), a intervenção manual se faz necessária.
Do mais, o artigo tá show de bola!


Vlw, pelos comentários e considerações!

[7] Comentário enviado por hevilavio em 12/03/2015 - 09:48h

Ótimo Artigo, parabéns!

[8] Comentário enviado por danilofugi em 12/03/2015 - 12:42h


[7] Comentário enviado por hevilavio em 12/03/2015 - 09:48h

Ótimo Artigo, parabéns!


Obrigado Helvilavio!

[9] Comentário enviado por felippem em 21/05/2015 - 15:32h

Olá amigo, estou tentando montar um cluster como esse so que eu queria utilizar o DRBD e o HeartBeat
Será que é possivel me ajudar?

[10] Comentário enviado por danilofugi em 21/05/2015 - 15:44h


[9] Comentário enviado por felippem em 21/05/2015 - 15:32h

Olá amigo, estou tentando montar um cluster como esse so que eu queria utilizar o DRBD e o HeartBeat
Será que é possivel me ajudar?


Olá felippem, com certeza que dá certo sim, tem um tutorial aqui no forum mesmo, vou te passar

http://www.vivaolinux.com.br/artigo/Alta-disponibilidade-com-Debian-Lenny-+-Heartbeat-+-DRBD8-+-OCFS...

único empasse é que deve utilizar o debian Lenny (5.X)

abraços

[11] Comentário enviado por Adonist em 24/03/2016 - 07:57h

Danilo,

Muito bom o seu tutorial. Porem replicando isso nao funcionou para mim na parte do DRBD.
Nao sei se eh por serem versoes diferentes mas na minha configuracao do r0.res eu tive que fazer o seguinte:

resource r0 {
on no01 {
device /dev/drbd0;
disk /dev/hdb1;
address 192.168.0.1:7793;
meta-disk internal;
}

on no02 {
device /dev/drbd0;
disk /dev/hdb1;
address 192.168.0.2:7793;
meta-disk internal;
}

Sendo que apos a opcao 'on' eh o nome da maquina e no resource eh o nome do arquivo que vc criou (r0.res).
Tambem precisei mudar os IP's pois estava conflitando ter as duas configuracoes no mesmo IP.

Valeu

[12] Comentário enviado por danilofugi em 26/03/2016 - 14:28h


[11] Comentário enviado por Adonist em 24/03/2016 - 07:57h

Danilo,

Muito bom o seu tutorial. Porem replicando isso nao funcionou para mim na parte do DRBD.
Nao sei se eh por serem versoes diferentes mas na minha configuracao do r0.res eu tive que fazer o seguinte:

resource r0 {
on no01 {
device /dev/drbd0;
disk /dev/hdb1;
address 192.168.0.1:7793;
meta-disk internal;
}

on no02 {
device /dev/drbd0;
disk /dev/hdb1;
address 192.168.0.2:7793;
meta-disk internal;
}

Sendo que apos a opcao 'on' eh o nome da maquina e no resource eh o nome do arquivo que vc criou (r0.res).
Tambem precisei mudar os IP's pois estava conflitando ter as duas configuracoes no mesmo IP.

Valeu


Agradeço pelo comentário, acabei esquecendo de editar o arquivo...
Caso se interesse, tente usar o software LCMC, faz toda a configuração de DRBD e Cluster pela interface Visual
vlw
abraços

[13] Comentário enviado por dalvasb em 05/09/2016 - 11:44h

Danilo,
você já montou dispositivos drbd com o pacemaker?
Eu consigo montar um, por exemplo, o drbd0, mas não consigo montar dois, não estou sabendo se preciso configurar de novo o resource drbd, ou apenas o resource de montar.

Dalva

[14] Comentário enviado por danilofugi em 05/09/2016 - 13:01h


[13] Comentário enviado por dalvasb em 05/09/2016 - 11:44h

Danilo,
você já montou dispositivos drbd com o pacemaker?
Eu consigo montar um, por exemplo, o drbd0, mas não consigo montar dois, não estou sabendo se preciso configurar de novo o resource drbd, ou apenas o resource de montar.

Dalva


Oi Dalva
Já montei sim e funcionam muito bem como a descrição acima, imagino o que deve estar acontecendo.
Tente o seguinte: esqueça a configuração do DRBD acima, monte seu cluster apenas instalando os pacotes e baixe um arquivo de configuração que se chama LCMC (executável em windows ou baixar um para linux) abra em outro terminal também conectado a rede
O LCMC irá buscar seus nós do cluster e você pode configurar os serviços de Apache DRBD Mysql do Cluster com simples cliques, acaba sendo mais fácil.
Poderá te auxiliar dando uma busca de video, Configuração LCMC DRBD, assim o Software LCMC fará todas as alterações listadas acima e funcionará perfeitamente

[15] Comentário enviado por llJllNllRll em 15/03/2018 - 18:24h

Durante a configuração do crm, sempre que eu o digitava no meu Debian 9.4, era emitida uma mensagem dizendo: "crm: comando não encontrado".

Só consegui resolver esse problema com a instalação do pacote: "#apt-get install crmsh"

Após, tudo prosseguiu sem problemas.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts