[FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Rogério Schneider
stockrt em gmail.com
Quinta Novembro 16 10:21:37 BRST 2006
Boa c0re, boa.
On 11/16/06, c0re dumped <ez.c0re em gmail.com> wrote:
> 2006/11/16, Rogério Schneider <stockrt em gmail.com>:
> > Exatamente Daniel.
> >
> > Com o CARP é sim possível criar redundância de servers e firewall. No
> > caso de firewall, é simplesmente o exemplo utilizado na doc do PF,
> > tudo bem... Mas existem outras aplicações, é só usar a imaginação.
>
> Concordo. Uso carp pros firewalls (8 no total), pros proxies (squids)
> e pros proxies reversos (pounds). Limitar o carp somente a firewall é
> subutilizar a ferramenta.
>
> > Com servers (www, mail) também fica viável, e muito!
> > Ai alguém diz: "Não quero máquina ociosa, quero divisão de carga!",
> > tudo bem criança!! Cria dois grupos CARP (supondo dois webserers, ok?)
> > e cada um é "backup do outro". Pronto, no momento que um deles cair, o
> > outro assume as duas identidades (ips virtuais).
> > No firewall vc cria um rdr com address pool, utilizando source-hash e
> > pronto, cada source vai sempre cair no mesmo server (sessions?
> > resolvido) e cada novo source cai em round-robin (load balance?
> > resolvido).
>
> Boa. Realmente não tinha pensado nisso.
:)
>
>
> > Feito o esquema, HA com Load Balance no CARP.
> >
> > Que manter os estados entre os servers? pfsync, e ninguém perde as conexões.
> > - Minha dúvida: É preciso mesmo utilizar pfsync entre os servers
> > internos, www, por exemplo? Ou isso apenas se aplica a redundância de
> > firewall? E ainda, tendo dois www com o esquema de backup mútuo, será
> > que um pfsync entre eles não iria atrapalhar as coisas, já que cada um
> > tem a sua table de estados? A não ser que o pfsync faça um merge dos
> > estados acho que isso iria causar problemas com sobrescrita de
> > estados, perdendo as conexões ativas em um dos pontos, mas ai fica a
> > pergunta, será que é preciso pfsync interno?
>
> Acredito que provavelmente sim, pois trabalha na camada de transporte,
> mantendo o estado das conexões (TCP e UDP), desta forma, ambos os
> proxies reversos (no meu caso) estariam com a tabela de estado de
> conexões sincronizadas.
>
> Provavelmente usando um round-robin e pfsync funcionaria pro meu caso,
> uma vez que ambos os pounds teriam as mesmas conexões, o que
> resolveria os problemas das sessions !
>
Ok, correto, é um caso diferente do meu, mas pensa, o pfsync vai
enviar do pound A para o B a sua table, a table do B não seria perdida
nesse momento?
Nisso é que tenho dúvida, a não ser que o pfsync fizesse um merge das
tables de A+B em ambos, mantendo os estados atuais de A e B preparando
A e B para receberem as sessões (conexões estabilished) direcionados
ao "outro peer" no momento de uma falha do mencionado "outro peer" e
transição para o peer restante.
Aqui o exemplo foi com dos peers, mas pode ser aplicado a "n", com "n"
grupos CARP e rdr com pool de "n".
>
> > E fica sempre o problema: sincronia de dados entre os servers,
> > principalmente se for mail, aqui sim é que eu quero ver alguém dar
> > alguma opinião realmente boa, com conhecimento de causa.
>
> No maeu caso isso é irrelevante uma vez que não há necessidade de
> sincronismo entre os arquivos de configuração dou pound, pois ambos
> tem que necessariamente ser diferentes.
Sorte sua :) Aqui o problema é justamente esse! Manter os dados sync
entre mais servers.
Você não precisa de um repositório central para as suas páginas www?
>
>
> > Utilizar CARP para failover NÃO É GAMBIARRA, ele foi FEITO para isso,
> > é PERFEITO nisso e para load balance usa rdr, e pronto. Não precisa
> > nem verificar quem está ativo ou não (pen) pq se vc tem dois grupos
> > CARP em backup mútuo o rdr nunca irá direcionar para uma máquina
> > inativa. Eu prefiro isso (PF) a DNS balance :)
>
> Justamente o que venho falando desde o começo da thread.
Sim, eu entendi, tive que me manifestar.
>
> > Agora falar mal do PF tem que estar pesado né? Pode parando....
>
> :)
>
>
>
> []'s
>
>
>
> --
>
> No stupid signatures here.
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>
--
Rogério Schneider
+55 (55) 9985 2127
+55 (55) 3332 5923
+55 (55) 3321 1535
MSN: stockrt em hotmail.com
ICQ: 78778973
GTalk: stockrt em gmail.com
Skype: stockrt
http://stockrt.unicruz.edu.br
Mais detalhes sobre a lista de discussão freebsd