LoadBalance e Failover com OpenBSD e PF

Mostrarei como configurar um mini-ambiente de alta disponibilidade com balanceamento de carga e tolerância a falha utilizando o sistema operacional OpenBSD.

[ Hits: 25.600 ]

Por: André Luiz Michi em 13/09/2010


Configuração CARP



Vamos começar habilitando os parâmetros do CARP no arquivo sysctl.conf:

# cat /etc/sysctl.conf | grep carp

net.inet.carp.allow=1 # Aceita os pacotes do CARP. Esse cara é habilitado por padrão.
net.inet.carp.preempt=1 # Esta opção derruba todas as interfaces de CARP quando uma delas é derrubada.
net.inet.carp.log=1 # Habilita ou desabilita o log dos pacotes do CARP. É útil para ver mensagens de erro. Também vem habilitado por padrão.

Não esqueça de habilitar o forwarding para ativar o roteamento.

net.inet.ip.forwarding=1

Os arquivos de configuração das interfaces de rede no OpenBSD tem o seguinte formato:

hostname.nomedainterface

No meu caso, a minha interface de rede tem o nome rl0.

Então, vamos configurar a interface da máquina que será o Master.

# cat /etc/hostname.rl0

inet 200.1.1.3 255.255.255.240 NONE

!ifconfig carp0 create
!ifconfig carp0 200.1.1.1 netmask 255.255.255.240 vhid 1 pass _simmons_ advskew 1 carpdev rl0

No servidor de backup a configuração é praticamente a mesma, mudando apenas o advskew, e o IP, é claro.

# cat /etc/hostname.rl0

inet 200.1.1.2 255.255.255.240 NONE

!ifconfig carp0 create
!ifconfig carp0 200.1.1.1 netmask 255.255.255.240 vhid 1 pass _simmons_ advskew 100 carpdev rl0

Para reiniciar as interfaces de rede no OpenBSD basta executar o seguinte comando:

# sh /etc/netstart

Ok, agora que configuramos e iniciamos as interfaces vamos entender um pouco os parâmetros.
  • ifconfig carp0 create: Aqui você cria uma interface virtual que receberá o nome de carp0.
  • vhid: é o virtual host identification, apesar do host no nome esta opção identifica um grupo de máquinas que compartilham o mesmo IP. Ele é muito importante, pois se você configurar alguma outra máquina no mesmo barramento com um VHID repetido o CARP não funcionará corretamente.
  • pass: especifica uma senha para ser utilizada pelo grupo de hosts.
  • advskew: advertisement skew, quando maior for o número , menor é a prioridade dele dentro do grupo. Ou seja , o Master é o 1 e o Slave o 100.
  • carpdev: define a qual interface física aquele carp está associado.

Feito isso os dois servidores já estão funcionando em active/backup.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Configuração CARP
   3. Configurando o PF
   4. Configuração CARP nos servidores Web
Outros artigos deste autor

Jogos no Linux

Como ajudar a comunidade Linux

Instalando o Slackware em 15 minutos

Iniciando no NFS

Fazendo backup de DVDs

Leitura recomendada

Criando pacotes no Slackware Linux

Instalando e configurando o vsftpd no Ubuntu

Simulando links com o netem

Drivers de impressão para clientes com Windows 7/XP

Limitando banda com o CBQ

  
Comentários
[1] Comentário enviado por fs.schmidt em 14/09/2010 - 00:23h

Parabéns amigo, excelente artigo !!!

[2] Comentário enviado por fabio em 14/09/2010 - 14:36h

Grande Simmons, bom te ver por aqui novamente!

Um abraço.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts