[FUGSPBR] Alta Disponibilidade

Felipe Neuwald neuwald em rudah.com.br
Sex Maio 9 12:17:54 BRT 2003


Caros Amigos,

tenho pretensão de fazer aqui na minha rede um sistema completamente
implementado com HA. Quero ter tudo em redundância, de uma forma que eu possa
garantir para os meus clientes garantia de 99,999% (e mais alguns 9 se
necessário) de conectividade. Para isto, irei refazer toda a minha estrutura
computacional, incluindo os servidores.
Vou descrever minha topologia e como irá funcionar a mesma abaixo:
Terei dois Links de 5 Megabits, onde eu estarei redirecionando tráfego para
cada link conforme a necessidade. Existe alguma forma de eu implementar com
que 50% dos pacotes saiam por um link e 50% dos outros saiam por outro? Ou que
50% das conexões saiam pelo link 1 e 50% saiam pelo link 2? A primeira dúvida
e desafio da minha topologia "um pouco bastante" complicada. :)
Ok, para cada link eu terei um roteador Cisco, independentes um do outro, em
redes elétricas separadas. Ok, agora terei meu Firewall, que também quero que
tenha redundância.
Será um Firewall com 6 interfaces, em que uma delas irá para outro Firewall
com mais 5 interfaces. Sei que é uma topologia muito grande e exigirá muito
processamento para o roteamento dos pacotes, mas é assim mesmo que deve ser.
Provavelmente terei máquinas bi-processadas e com muita memória.
Ok, vou falar sobre o primeiro Firewall.
Segue abaixo as especificações de cada NIC dele:
NIC 1 - Rede de ligação com o Link 1 - Cisco 1
NIC 2 - Rede de ligação com o Link 2 - Cisco 2
NIC 3 - Rede de Servidores 
NIC 4 - Rede de Clientes 1 - Discados
NIC 5 - Rede de Clientes 2 - Dedicados
NIC 6 - Rede de ligação com o Firewall 2

Ok, agora confiram o Firewall 2:
NIC 1 - Rede de ligação com o Firewall 1
NIC 2 - Rede de Servidores Jail (co-location)
NIC 3 - Rede de Servidores de Backup
NIC 4 - Rede de Servidores de Acesso (rede com menos segurança, provavelmente
única rede que terá acesso ssh externo entre outros)
NIC 5 - Rede local (Este Firewall fará NAT apenas para esta rede, o Firewall 1
não faz NAT).

Sobre o hardware das máquinas, comprarei para todos os sistemas duas máquinas
idênticas. Uma servirá de Master e outra de Slave, e pretendo comunicá-las
através de um cabo serial.

Então eu teria o seguinte:

+----------+                   +----------+
|Firewall 1|----cabo serial----|Firewall 1|
|Master    |                   |Slave     |
+----------+                   +----------+

Para isso, em cada interface eu teria o seguinte (vou citar como exemplo a
comunicação do cisco 1 com os Firewall 1 Master e Slave):

Cisco
  |
  |
porta 1 porta 2 porta 3
Switch
porta 1 porta 2 porta 3
          |          |
          |          |
          |          |
Firewall Master  Firewall Slave

Para todas as redes conectadas eu teria que utilizar 3 portas de switch, e
também terei que configurar os switchs nestas VLANs para não armazenar MAC
Address, senão com certeza terei problemas na hora das interfaces de uma
máquina Slave subir.

Até aí tudo bem (nem tudo, o problema é implementar), tenho o projeto de
deixar todas as minhas máquinas neste mesmo projeto que eu apresentei acima
dos Firewalls (menos servidores DNS, pois já existe a configuração de Master e
Slave no próprio Registro.br). Agora as perguntas que não querem calar: vou
conseguir implementar esta topologia no FreeBSD (em Alta Disponibilidade)?
Alguém já implementou algo parecido?
No final das contas quero que quando uma máquina caia, a outra assuma, ou que
quando algum serviço pare, a outra assuma, mas para isto os dados delas
precisam estar sincronizados. Idéias? Sugestões?
Estou iniciando o projeto aqui. Se quiserem, nós podemos criar um projeto do
tipo "FreeBSD-HA", e resolver estas dúvidas inquietantes da natureza do
daemonzinho.

Um grande abraço para todos,

---
Felipe Neuwald
neuwald em rudah.com.br
Rudah On-Line SysAdm
_______________________________________________________________
Sair da Lista: http://www2.fugspbr.org/mailman/listinfo/fugspbr
Historico: http://www4.fugspbr.org/lista/html/FUG-BR/



Mais detalhes sobre a lista de discussão freebsd