Bonding para Heartbeat + Bonding para DRBD + OCFS2 + Debian Squeeze

Bonding para Heartbeat + Bonding para DRBD + OCFS2 + Debian Squeeze.

[ Hits: 38.557 ]

Por: Douglas Q. dos Santos em 25/08/2012 | Blog: http://wiki.douglasqsantos.com.br


Introdução



E aí, galera.

Aqui vou abordar a configuração de Bonding para termos a redundância de interfaces físicas para o serviço de HA, pois o Heartbeat vai trabalhar no bond0 e o DRBD + OCFS2, vai trabalhar no bond1.

Estou utilizando o algoritmo round-robin, que faz o balanceamento dos dados, porém, temos outros algoritmos que podemos utilizar para o mesmo fim.

Quero ganhar disponibilidade do servidor e aumentar a performance de acesso à rede, onde temos, às vezes, gargalos como no serviço do DRBD, que é um RAID 1 via rede.

Como vai funcionar: aqui vamos agrupar 2 interfaces para montar um bond para o Heartbeat e agrupar as outras 2 interfaces para montar o bond para o DRBD.

Caso caia alguma das interfaces por causa de algum problema de hardware, o servidor vai continuar funcionando, pois temos uma interface de "Backup" trabalhando, caso as duas estejam funcionando, vamos fazer o balanceamento de carga entre elas e, com isso, melhorando a performance.

Prepare o seu sistema com o seguinte script, para que não falte nenhum pacote ou configuração:

Pré-requisitos

  • Nome Nodo1: srv01
  • IP DMZ: 10.101.0.25/24 -> VLAN DMZ
  • IP DMZ HA: 10.101.0.27/24 -> VLAN DMZ
  • IP Dados: 172.20.0.25/24 -> VLAN Dados
  • Interfaces de rede: eth0, eth1, eth2, eth3
  • Partição utilizada Nodo1: /dev/sdb1 dispositivo com 8 GB

  • Nome Nodo2: srv02
  • IP DMZ: 10.101.0.26/24 -> VLAN DMZ
  • IP DMZ HA: 10.101.0.27/24 -> VLAN DMZ
  • IP Dados: 172.20.0.26/24 -> VLAN Dados
  • Interfaces de rede: eth0, eth1, eth2, eth3
  • Partição utilizada Nodo2: /dev/sdb1 dispositivo com 8 GB


    Próxima página

Páginas do artigo
   1. Introdução
   2. Instalação e configuração do Bond
   3. Instalação e configuração do Heartbeat
   4. Instalação e configuração do DRBD + OCFS2
   5. Plus de Heartbeat
Outros artigos deste autor

Alta disponibilidade com Debian Lenny + Heartbeat + DRBD8 + OCFS2 + MONIT + LVS

Um pouco sobre IPtables

Bind9 em chroot no Debian Lenny

Bind9 slave em chroot no Debian Lenny

IDS com Snort + Guardian + Debian Lenny

Leitura recomendada

Guia de preparação para LPI

Como fazer hackergotchi (ou avatar de cabeça flutuante)

Criar CD de instalação a partir do HD

Vamos testar esse tal de Linux?

SIMH: Recriando um pouco da história

  
Comentários
[1] Comentário enviado por danniel-lara em 25/08/2012 - 13:57h

Parabéns pelo artigo
muito bom mesmo

[2] Comentário enviado por rafael.mendes em 31/08/2012 - 19:21h

excelente artigo!!!

[3] Comentário enviado por tborri em 20/02/2013 - 23:42h

Parabéns pelo artigo, encontrei alguns problemas estou utilizando Debian Squeeze 6.0.6
1º os módulos cn e drbd não carregavam tive que adicionar manual em
# /etc/modules
cn
drbd

2º quando carrega dava erro no mount.ocfs2 /etc/fstab
resolvi com estes cabeçalhos dos scripts
drbd

# /etc/init.d/drbd
# Default-Start: 2 3 4 5

o2cb

#!/bin/bash
# init fragment for O2CB.
#
# chkconfig: 2345 24 20
# description: Load O2CB cluster services at system boot.
#
### BEGIN INIT INFO
# Provides: o2cb
# Required-Start: $local_fs $network $syslog drbd
# Required-Stop: $local_fs $network $syslog drbd
# Should-Start:
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Load O2CB cluster services at system boot.
# Description: Load O2CB cluster services at system boot.
### END INIT INFO

ocfs2

#! /bin/bash
# Copyright (c) 2005 Oracle
# All rights reserved.
#
# chkconfig: 2345 25 19
# description: Mount OCFS2 volumes at boot.
#
### BEGIN INIT INFO
# Provides: ocfs2
# Required-Start: $local_fs $network $syslog o2cb
# Required-Stop: $local_fs $network $syslog o2cb
# X-UnitedLinux-Should-Start:
# X-UnitedLinux-Should-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Mount OCFS2 volumes at boot.
# Description: Mount OCFS2 volumes at boot.
### END INIT INFO

e a ordem de inicialização dos serviços continuaram a mesma

insserv -r -v ocfs2
insserv -r -v o2cb
insserv -r -v drbd

depois

insserv -f -v drbd
insserv -f -v o2cb
insserv -f -v ocfs2

e tudo funcionando, parabéns mais uma vez pelo artigo!!!

[4] Comentário enviado por Jonatas_rc2 em 04/06/2013 - 16:08h

Douglas,

Parabéns pelo artigo. Mas se possível me tire uma dúvida:

É possível fazer essa solução funcionar em um servidor Linux que tenha uma aplicação web? exemplo..

No meu trabalho tem um linux com o apache tomcat, e esse teu artigo me abriu os olhos quanto a isso. Tenho pouca experiência com Linux. Mas é possível?


Grato

[5] Comentário enviado por douglas_dksh em 06/06/2013 - 10:07h

Cara você pode sim.

Eu tenho isso implementado em alguns clientes, para servidores web, email e outros.

Não sei como você está fazendo a instalação do tomcat eu sempre faço pelos binários que baixo não instalo por pacotes, se fizer assim é so colocar o tomcat no drbd e fazer os clientes utilizarem o endereço ip do heartbeat.

qualquer coisa tem mais algumas coisas no meu site www.douglas.wiki.br

[6] Comentário enviado por rafaelmcosta em 20/10/2013 - 13:10h

Muito bom o artigo.

Uma duvida, pq vc coloca o default start do drbd assim?

/etc/init.d/drbd

# Deixe a opção Default-Start como abaixo
# Default-Start: S

Teve algum problema ao deixar 2 3 4 5?

Outra coisa, a montagem pelo /etc/fstab foi sem problemas? Aqui sempre reclama, uma vez que o DRBD e OCFS2 sobem depois.

[7] Comentário enviado por bruno-debian em 03/02/2014 - 16:51h

Muito F***. Me ajudou muito fera ! Obrigado por compartilhar !

[8] Comentário enviado por wagnerfs em 21/08/2014 - 10:34h

Parabéns pelo artigo e por difundir o conhecimento.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts