Alta disponibilidade de links

Neste artigo venho compartilhar a minha experiência e desespero quando precisei criar um sistema de alta disponibilidade de links em ambiente Linux numa Sexta-feira às 5:30 da tarde. Acredito que muitos já passaram por isso. Obtive sucesso com a minha solução e espero que este artigo ajude muitas pessoas contribuindo ainda mais com a comunidade.

[ Hits: 31.617 ]

Por: Bruno em 16/11/2004


Introdução



Nosso objetivo consiste em construir um ambiente de alta disponibilidade de link e somente de link, para o nosso cliente.

Nós não utilizaremos ferramentas como iproute2 e heartbeat neste documento, pois nosso foco será somente alta disponibilidade de link e não balanceamento de link ou replicação de dados.

    Próxima página

Páginas do artigo
   1. Introdução
   2. Ambiente
   3. Implantação
Outros artigos deste autor

Detectando possíveis trojans e lkms em seu servidor

POP3 gateway com fetchmail

Leitura recomendada

Aviso de queda de Internet via Sendxmpp

Ingressando estações de trabalho Ubuntu no AD com Closed In Directory

Criando Autoridades Certificadores e Certificados de Testes no Linux

Script GitPratico para criar repositórios remotos sem logar no GitHub

Relatório de sistema via browser (shell script + CGI)

  
Comentários
[1] Comentário enviado por fabio em 16/11/2004 - 00:04h

Bruno, muito bom seu artigo, com certeza será útil para muito. Bela sacada! Já foi pra pastinha de favoritos da minha conta aqui no VOL :)

[]'s

[2] Comentário enviado por pop_lamen em 16/11/2004 - 01:25h

Amigo, bem legal,
mas eu acho q faltou um IF aih, se a LP estivesse down, mas o speedy ja configurado, então ele deveria sair:

echo "verifica se existe rota da LP, se existir deleta"
if route -n | grep $LPGW > /dev/null; then
route del default gw $LPGW > /dev/null

fi
#agora vamos checar se o gw ja nao eh speedy
if if route -n | grep $SPEEDY > /dev/null ;then
#se for sai, se não continua
echo "Speedy ja ativado"
exit 0
else
echo "adiciono a rota default da speedy"
route add default gw $SPEEDY > /dev/null
echo "rota adicionada"
$IPTABLES -t nat -D POSTROUTING 1 > /dev/null
$IPTABLES -t nat -A POSTROUTING -i eth2 -j MASQUERADE > /dev/null
echo "regras de firewall adicionadas"

fi
#acionamos um ultimo
fi
done

--------------
Além disso serial legal implementar funções, a asism chama-las com um loop infinito, pausando, podendo assim, checar tudo de tempo em tempo.



[3] Comentário enviado por silvioreis em 16/11/2004 - 03:41h

Bruno,

A proposta é boa, mas a sua implementação precisa melhorar, essas soluções de coisas no cron monitorando de tempos em tempos são horriveis.

Estou trabalhando no mesmo problema e não vejo como fugir do iproute2 + "alguma coisa".

O problema link dedicado com ip fixo e link adsl com ip dinamico parece não ser muito facil de resolver de maneira simples, ou seja, sem precisar aplicar patches de kernel.

Pq vc desistiu do iproute2 ?

[4] Comentário enviado por naoexistemais em 16/11/2004 - 05:28h

Bruno,

Esse artigo posso considerar o melhor que já vi aqui no VOL, parabens.......

Falou,

[5] Comentário enviado por y2h4ck em 16/11/2004 - 10:11h

Ae Bruno sup3r hax0r b1g b33r eheheh
Mandou bem no artigo.

Demorou mais saiu aheheheh

[]s brow.

Spawn

[6] Comentário enviado por chroot em 16/11/2004 - 10:18h

Obrigado pela forca galera, deixando claro que a solução esta aberta para criticas e opiniões, pois o objetivo é que juntos, consigamos tornar a solução a melhor possivel, então mãos a obra e ajudem a comunidade ;)

ps : humildade sempre

[7] Comentário enviado por wronieri em 16/11/2004 - 21:06h

Muito bom seu artigo Bruno estou tentando fazer este tipo de esquema mas com heartbeat vc nunca tentou usar este esquema?

Parabéns ;-)

[8] Comentário enviado por removido em 17/11/2004 - 15:48h

Excelente material...
Parabéns!!!!!!!!!!!!

[9] Comentário enviado por uxhsilva em 23/05/2006 - 16:08h

Parabens !!

[10] Comentário enviado por removido em 14/11/2006 - 09:38h

bonding \o/

[11] Comentário enviado por andrelopes.mrx em 26/12/2009 - 16:52h

Eu achei precário, que a inteligência fique num script agendado no cron, pense nisso: mantenha rota para os 2 gateways de saída para a internet, sendo a saída pelo link secundário com uma metrica pior.

Em ambientes BSD, você pode monitorar as interfaces de maneira eficiente com ifstated, mas creio que para o seu cenário nem isso seja necessário.

Espero ter contribuído com alguma idéia.

André Gustavo
blog: http://blog.mrx.com.br
gtalk: andre@mrx.com.br


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts