Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Marcelo, você tem boas referências para postar, obrigado, vou ter um dia cheio de leituras :) On 11/16/06, Marcello Costa [EMAIL PROTECTED] wrote: Bem porque querer compartilhar o /tmp se é possivel manter a sessão http do requisitante ? simplesmente não é preciso. Log ? o syslog resolve isso , pode ter um servidor que sera o master dos logs. Bem me lembro que tem um exemplo com freebie sendo usado pra cluster via nfs , funciona claro , mas não é o caso. http://www.onlamp.com/pub/a/bsd/2004/07/01/freesbie.html Apache tem a sua solução : http://httpd.apache.org/docs/2.2/mod/mod_proxy_balancer.html http://www.backhand.org/mod_backhand/ Achei outros com java , vadi retro , amenos que vc use tomcat http://www.samag.com/documents/s=1155/sam0101a/0101a.htm Material muito bom esse aqui : http://www.enterux.com/en/solutions/load-balancing-high-volume-solutions Citado varias vezes http://www.tummy.com/journals/entries/scott_20050324_171814 http://www.linux-ha.org/Heartbeat Balance já foi colocado na lista Tem varias formas de fazer , apenas acho que o problema não precisa passar a ser storage. Storage , o geom pode ajudar virtualizando ou to falando tremenda besteira ? Não é besteira não, estou trabalhando para utilizar um sistema baseado em geom com ggate e gmirror. Bem, a idéia é replicar um volume de uma máquina para outra, e quando a slave assumir, checar se ela pode assumir, se estiver com sistema limpo, consistente. Parece simples, mas na hora de implementar é que aparecem os problemas reais. Outra coisa, é que as vezes a sincronização me parece muito lenta, quando de uma falha, o novo slave recebe, no startup, TODO o volume do atual master... Isso leva muito tempo. O DRBD diz ser otimizado nisso, levando de 1 a 3 minutos para sync completa, em volumes de até 4 TB, isso sim é bom. Se o gmirror pudesse fazer isso, seria ótimo, trabalhar como o rsync saca, gerando hashs de blocos contínuos e checando com o destino, otimizando a transferência, enviando somente aquilo que é realmente diferente, e não tudo. Esbarrei nesse problema agora... E outra coisa é quando um slave assume master com o FS corrompido. Pode ocorrer, e representa risco para os dados, imaigna fazer um espelhamento disso sobre o antigo master, que tem os dados consistentes? Pronto neh... Essa chacagem deve ser feita antes de o slave assumir master. Quanto aos clientes, seriam NFS, ai entra um outro problema. Como eles se comportariam numa troca onde ninguém asume? Master falha, slave não assume por inconsistência.. Será que o cliente (server web, mail) não vai tentar usar arquivos locais nesse caso? Isso seria uma boa bosta :) Att, RS Em Qui, 2006-11-16 às 14:27 -0200, Rogério Schneider escreveu: Marcelo, veja: Failover e Load Balance é sim simples de se fazer, o PF resolve tudo isso, com pfsync, CARP e rdr. Ponto. Compartilhar os dados, centralizar, isso sim é uma problema, e seria exatamente sobre isso que eu gostaria que alguém aqui se manifestasse. Existe alguma maneira eficiente de se ter um storage redundante montado sobre FreeBSD (ou mesmo Linux, Open, enfim...) baseado TOTALMENTE em soluções livres? Esse é o ponto. :) Os /tmp poderiam ficar no storage, sem problemas, mesmo. Você vê algum problema? Tudo bem, muda o diretório de sessions nos teus servers www e aponta este novo caminho para dentro do storage, em área compartilhada, assim vc mantém os /tmp isolados. O problema é o storage gente alguém? Att, RS -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 http://www.fug.com.br ___ Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! http://br.mobile.yahoo.com/mailalertas/ - 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: [EMAIL PROTECTED] ICQ: 78778973 GTalk: [EMAIL PROTECTED] Skype: stockrt http://stockrt.unicruz.edu.br - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
NFS não foi seria recomendado http://lists.freebsd.org/pipermail/freebsd-net/2006-August/011331.html Melhor solução seria sem duvida um raid via rede A latencia pode não ser um grande problema , vc não fica alterando arquivos assim a todo instante , fora o /tmp claro. Tem isso aqui , antigão mas interessante http://blizzard.rwic.und.edu/~nordlie/miniwulf/ http://people.freebsd.org/~brooks/papers/bsdcon2003/ Esse parecem promissores http://www.freebsd.org/cgi/url.cgi?ports/sysutils/sge/pkg-descr http://gridengine.sunsource.net/ Q: What is Grid Engine? A: Grid Engine is a Distributed Resource Management (DRM) software. DRM software aggregates compute power and delivers it as a network service. Grid Engine software is used with a set of computers to create powerful compute farms, which are used in a wide range of technical computing applications such as the development of semiconductors, bioinformatics, mechanical design, software development, oil/gas exploration, and financial analysis; additionally, massively scaling supercomputers use Grid Engine software in a variety of academic and research pursuits. Users enjoy access to large computing capability and organizations enjoy effective utilization of their computing resource investments approaching 100%. Implementrar ai é outra história ... Não é besteira não, estou trabalhando para utilizar um sistema baseado em geom com ggate e gmirror. Bem, a idéia é replicar um volume de uma máquina para outra, e quando a slave assumir, checar se ela pode assumir, se estiver com sistema limpo, consistente. Parece simples, mas na hora de implementar é que aparecem os problemas reais. Outra coisa, é que as vezes a sincronização me parece muito lenta, quando de uma falha, o novo slave recebe, no startup, TODO o volume do atual master... Isso leva muito tempo. O DRBD diz ser otimizado nisso, levando de 1 a 3 minutos para sync completa, em volumes de até 4 TB, isso sim é bom. Se o gmirror pudesse fazer isso, seria ótimo, trabalhar como o rsync saca, gerando hashs de blocos contínuos e checando com o destino, otimizando a transferência, enviando somente aquilo que é realmente diferente, e não tudo. Esbarrei nesse problema agora... E outra coisa é quando um slave assume master com o FS corrompido. Pode ocorrer, e representa risco para os dados, imaigna fazer um espelhamento disso sobre o antigo master, que tem os dados consistentes? Pronto neh... Essa chacagem deve ser feita antes de o slave assumir master. Quanto aos clientes, seriam NFS, ai entra um outro problema. Como eles se comportariam numa troca onde ninguém asume? Master falha, slave não assume por inconsistência.. Será que o cliente (server web, mail) não vai tentar usar arquivos locais nesse caso? Isso seria uma boa bosta :) Att, RS Em Qui, 2006-11-16 às 14:27 -0200, Rogério Schneider escreveu: Marcelo, veja: Failover e Load Balance é sim simples de se fazer, o PF resolve tudo isso, com pfsync, CARP e rdr. Ponto. Compartilhar os dados, centralizar, isso sim é uma problema, e seria exatamente sobre isso que eu gostaria que alguém aqui se manifestasse. Existe alguma maneira eficiente de se ter um storage redundante montado sobre FreeBSD (ou mesmo Linux, Open, enfim...) baseado TOTALMENTE em soluções livres? Esse é o ponto. :) Os /tmp poderiam ficar no storage, sem problemas, mesmo. Você vê algum problema? Tudo bem, muda o diretório de sessions nos teus servers www e aponta este novo caminho para dentro do storage, em área compartilhada, assim vc mantém os /tmp isolados. O problema é o storage gente alguém? Att, RS -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 http://www.fug.com.br ___ Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! http://br.mobile.yahoo.com/mailalertas/ - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 http://www.fug.com.br ___ O Yahoo! est� de cara nova. Venha conferir! http://br.yahoo.com - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Marcello, o NFS não é recomendado no uso write one / read all, pq ao modificar o inodes under the feets do NFS ele perde a ref, devido ao seu cache. No caso, apenas uma máquina servindo NFS e a outra como mirror daria certo, desde que não se quisesse ler via NFS da máquina mirror. Att, RS On 11/17/06, Marcello Costa [EMAIL PROTECTED] wrote: NFS não foi seria recomendado http://lists.freebsd.org/pipermail/freebsd-net/2006-August/011331.html Melhor solução seria sem duvida um raid via rede A latencia pode não ser um grande problema , vc não fica alterando arquivos assim a todo instante , fora o /tmp claro. Tem isso aqui , antigão mas interessante http://blizzard.rwic.und.edu/~nordlie/miniwulf/ http://people.freebsd.org/~brooks/papers/bsdcon2003/ Esse parecem promissores http://www.freebsd.org/cgi/url.cgi?ports/sysutils/sge/pkg-descr http://gridengine.sunsource.net/ Q: What is Grid Engine? A: Grid Engine is a Distributed Resource Management (DRM) software. DRM software aggregates compute power and delivers it as a network service. Grid Engine software is used with a set of computers to create powerful compute farms, which are used in a wide range of technical computing applications such as the development of semiconductors, bioinformatics, mechanical design, software development, oil/gas exploration, and financial analysis; additionally, massively scaling supercomputers use Grid Engine software in a variety of academic and research pursuits. Users enjoy access to large computing capability and organizations enjoy effective utilization of their computing resource investments approaching 100%. Implementrar ai é outra história ... Não é besteira não, estou trabalhando para utilizar um sistema baseado em geom com ggate e gmirror. Bem, a idéia é replicar um volume de uma máquina para outra, e quando a slave assumir, checar se ela pode assumir, se estiver com sistema limpo, consistente. Parece simples, mas na hora de implementar é que aparecem os problemas reais. Outra coisa, é que as vezes a sincronização me parece muito lenta, quando de uma falha, o novo slave recebe, no startup, TODO o volume do atual master... Isso leva muito tempo. O DRBD diz ser otimizado nisso, levando de 1 a 3 minutos para sync completa, em volumes de até 4 TB, isso sim é bom. Se o gmirror pudesse fazer isso, seria ótimo, trabalhar como o rsync saca, gerando hashs de blocos contínuos e checando com o destino, otimizando a transferência, enviando somente aquilo que é realmente diferente, e não tudo. Esbarrei nesse problema agora... E outra coisa é quando um slave assume master com o FS corrompido. Pode ocorrer, e representa risco para os dados, imaigna fazer um espelhamento disso sobre o antigo master, que tem os dados consistentes? Pronto neh... Essa chacagem deve ser feita antes de o slave assumir master. Quanto aos clientes, seriam NFS, ai entra um outro problema. Como eles se comportariam numa troca onde ninguém asume? Master falha, slave não assume por inconsistência.. Será que o cliente (server web, mail) não vai tentar usar arquivos locais nesse caso? Isso seria uma boa bosta :) Att, RS Em Qui, 2006-11-16 às 14:27 -0200, Rogério Schneider escreveu: Marcelo, veja: Failover e Load Balance é sim simples de se fazer, o PF resolve tudo isso, com pfsync, CARP e rdr. Ponto. Compartilhar os dados, centralizar, isso sim é uma problema, e seria exatamente sobre isso que eu gostaria que alguém aqui se manifestasse. Existe alguma maneira eficiente de se ter um storage redundante montado sobre FreeBSD (ou mesmo Linux, Open, enfim...) baseado TOTALMENTE em soluções livres? Esse é o ponto. :) Os /tmp poderiam ficar no storage, sem problemas, mesmo. Você vê algum problema? Tudo bem, muda o diretório de sessions nos teus servers www e aponta este novo caminho para dentro do storage, em área compartilhada, assim vc mantém os /tmp isolados. O problema é o storage gente alguém? Att, RS -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 http://www.fug.com.br ___ Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! http://br.mobile.yahoo.com/mailalertas/ - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 http://www.fug.com.br ___ O Yahoo! est� de cara nova. Venha conferir! http://br.yahoo.com - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista:
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Olá C0re Legal sua atitude :) Bom, o ports dis que a página do pen é: http://siag.nu/pen/ tem um artigo meu no fug que fala sobre ele, e as páginas do man dele são bem claras, O carp, tem um artigo meu tb no site do grupo, e as páginas do man tb é bem pequena e facil. Boa sorte :) -- Daniel Bristot de Oliveira R João Paez 409 Ap 202 Sta Augusta - Criciúma - SC CEP 88805440 Brazil +55-48-91032512 - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
2006/11/16, Rogério Schneider [EMAIL PROTECTED]: 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 ! 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. 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. 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
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Boa c0re, boa. On 11/16/06, c0re dumped [EMAIL PROTECTED] wrote: 2006/11/16, Rogério Schneider [EMAIL PROTECTED]: 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: [EMAIL PROTECTED] ICQ: 78778973 GTalk: [EMAIL PROTECTED] Skype: stockrt http://stockrt.unicruz.edu.br - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
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? Sim, você está certo ! Pro pfsync funcionar direitinho é estritatemente necessário que uma máquina esteja ociosa e a outra recebendo todas as conexoes. Se eu tentar sincronizar tabelas de dois servers ativos uma vai acabar sobrescrevendo a outra e vai virar a maior bagunça. Tua sugestão usando pfsync e source-hash é muito melhor. 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? Bom, aqui no trabalho há uma certa divisão de equipes... Rede, Produção e Desenvolvimento (sou da equipe de redes). O pessoal da produção são os responsáveis por prover os repositórios pros WWWs. Infelizmente ainda há uma forte cultura MS lá. Todos os servidores ainda estão em IIS 5.0. Pra você ter uma idéa nosso ponto eletrônico (feito pela equipe de desenv.) só roda em IE (arrrgh !). Outro dia fui sugerir o uso de PostgreSQL ao invés de MSSQL e quase fui linchado. :D []'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
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Pessoal, vou me arriscar um pouco aqui, mas pelo que eu lí até agora, o pfsync só sincroniza a tabela de estados do PF, e não o estado da conexão TCP (UDP não é orientado a conexão). PFSYNC(4) FreeBSD Kernel Interfaces Manual PFSYNC(4) NAME pfsync -- packet filter state table logging interface On 11/16/06, c0re dumped [EMAIL PROTECTED] wrote: 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? Sim, você está certo ! Pro pfsync funcionar direitinho é estritatemente necessário que uma máquina esteja ociosa e a outra recebendo todas as conexoes. Se eu tentar sincronizar tabelas de dois servers ativos uma vai acabar sobrescrevendo a outra e vai virar a maior bagunça. Tua sugestão usando pfsync e source-hash é muito melhor. 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? Bom, aqui no trabalho há uma certa divisão de equipes... Rede, Produção e Desenvolvimento (sou da equipe de redes). O pessoal da produção são os responsáveis por prover os repositórios pros WWWs. Infelizmente ainda há uma forte cultura MS lá. Todos os servidores ainda estão em IIS 5.0. Pra você ter uma idéa nosso ponto eletrônico (feito pela equipe de desenv.) só roda em IE (arrrgh !). Outro dia fui sugerir o uso de PostgreSQL ao invés de MSSQL e quase fui linchado. :D []'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 -- André Sencioles [EMAIL PROTECTED] - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Em 16/11/06, Andre Sencioles[EMAIL PROTECTED] escreveu: Pessoal, vou me arriscar um pouco aqui, mas pelo que eu lí até agora, o pfsync só sincroniza a tabela de estados do PF, e não o estado da conexão TCP (UDP não é orientado a conexão). Isso é fácil de resolver, se fosse o caso, bastava você habilitar o pf usando pass in all e pass out all em ambas as máquina e voila ! Como demonstrado anteriormente, no caso dos WWWs não iria funcionar num esquema ativo/ativo. Sim, o UDP é protocolo conectionless o que de certa forma inviabiliza análise de estado de conexões, mas o pf simplesmente mantém um registro do tempo desde a última ocorrência de um pacote para dada conexão. Caso o tempo de espera seja atingido, o registro de estado é eliminado. http://www.openbsd.org/faq/pf/pt/filter.html#udpstate []'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
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Bem, ai não tem jeito né, se os servers não rodam BSD vc tem que achar outro jeit de balancear, nesses casos eu concordo com o uso de outra coisa que não seja CARP+PF+pfsync :) pen é uma boa alternativa nesse caso. Att, RS On 11/16/06, c0re dumped [EMAIL PROTECTED] wrote: 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? Sim, você está certo ! Pro pfsync funcionar direitinho é estritatemente necessário que uma máquina esteja ociosa e a outra recebendo todas as conexoes. Se eu tentar sincronizar tabelas de dois servers ativos uma vai acabar sobrescrevendo a outra e vai virar a maior bagunça. Tua sugestão usando pfsync e source-hash é muito melhor. 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? Bom, aqui no trabalho há uma certa divisão de equipes... Rede, Produção e Desenvolvimento (sou da equipe de redes). O pessoal da produção são os responsáveis por prover os repositórios pros WWWs. Infelizmente ainda há uma forte cultura MS lá. Todos os servidores ainda estão em IIS 5.0. Pra você ter uma idéa nosso ponto eletrônico (feito pela equipe de desenv.) só roda em IE (arrrgh !). Outro dia fui sugerir o uso de PostgreSQL ao invés de MSSQL e quase fui linchado. :D []'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: [EMAIL PROTECTED] ICQ: 78778973 GTalk: [EMAIL PROTECTED] Skype: stockrt http://stockrt.unicruz.edu.br - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Os webservers não rodam BSD, mas os proxies reversos rodam... FreeBSD 6.1 redondinho. :) []'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
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Oi Gente, Uma sugestão. Se for usado um filelock ou memlock, conforme o caso da aplicação, tem de funcionar. Já fiz fincionar aqui com o carp e o unison. Aqui foram apenas duas máquinas da A para a B; da B para a A; e bidirecional, ao mesmo tempo. abraços Lucas Cotta On Thursday 16 November 2006 10:39, c0re dumped wrote: 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? Sim, você está certo ! Pro pfsync funcionar direitinho é estritatemente necessário que uma máquina esteja ociosa e a outra recebendo todas as conexoes. Se eu tentar sincronizar tabelas de dois servers ativos uma vai acabar sobrescrevendo a outra e vai virar a maior bagunça. Tua sugestão usando pfsync e source-hash é muito melhor. 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? Bom, aqui no trabalho há uma certa divisão de equipes... Rede, Produção e Desenvolvimento (sou da equipe de redes). O pessoal da produção são os responsáveis por prover os repositórios pros WWWs. Infelizmente ainda há uma forte cultura MS lá. Todos os servidores ainda estão em IIS 5.0. Pra você ter uma idéa nosso ponto eletrônico (feito pela equipe de desenv.) só roda em IE (arrrgh !). Outro dia fui sugerir o uso de PostgreSQL ao invés de MSSQL e quase fui linchado. :D []'s - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Acho que se para para pensar um pouco vai entender o que eu disse e nem vc ou ninguem nessa lista tem que concordar comigo, para mim ter que compartilhar o /tmp em dois servidores é gambiarra e nunca deixarei um admin fazer isso sem esgotar todas as possiveis opções Em Qui, 2006-11-16 às 09:45 -0200, Rogério Schneider escreveu: 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. 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). 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? 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. 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 :) Agora falar mal do PF tem que estar pesado né? Pode parando Att, RS On 11/14/06, Daniel Bristot de Oliveira [EMAIL PROTECTED] wrote: Nossa essa thread rendeu hehe. Ja usei Pen, Carp, VRRP e rdr com source track no PF Porém, isto é para balanceamento de carga entrante, isto é, conexões entrando na minha rede, para eu servir. O artigo, carp e pfsync que o irado se referenciou, é um failover de um gateway, NAT... de conexões saindo. E fugiu um pouco do escopo da thread, mas vamos lá O carp, como o nome dis, é um protocolo de redundância de endereço comum. Ele trabalha em nível de ARP, e não em nivel IP, como o vrrp faz. Ele foi feito para ser utilizado em qualuer lugar que se possa ou precize redundância pasiva, isto é, um espera o outro cair e assume. Load Balance com o carp, é feito em nivel arp, e por isto ele só funciona em rede local, por exemplo: duas maquinas estão fazendo um host virtual, onde as duas possuem um estado mestre e um escravo do emsmo endereço, desta forma teremos dois mestres, e dois recebendo as conexõs, porém, a divisão de carga é feita, em round-robin, porém, é utilizado um hash, para definir quem responde um cliente, então, um cliente semrpe vai ser respondido pelo mesmo mestre. Porém! isto só funciona em rede local! o Pen é um load balancer, com possibilidade de rastreamento de clientes. ele recebe uma conexão, redireciona e distribui para outros servidores, ele utiliza escalonamento em round-robin, (Na veradde todos estes que falei, utilizam round-robin por se tratar de escalonamento estático, por que ningeum gerencia estado de carga). Porém, o pen é o único que é possível utilizar prioridades no escalonamento. E o Pen verifica se os servidores estão UP ou não. Porém o Pen executa em nível do usuário, o que adiciona um grande delay nas trasnsações de rede, por estar sujeito a paginação, swap, ter que passar do nivel do kernle para usuário, e devolta do usuário para o kernel, e todas as verificações por trás disto. O PF com rdr faz redirecionamento,. e distribuição em round-robin, com possibilidade de source track, que é o rastreamento de clientes. ele e o pen são compatíveis, porém, o PF não checa estado de clientes, e não tem prioridades no escalonamento. Mas executa em nivel do kernel, e isso da uma direfença grande no desempenho, por que não está em área paginada, não possui tantas restrições ao acesso aos dados da rede, mas tem que cuidar para ele não abusar do sistema :) alem de ser mais facil de aplicar QoS e controle de DoS para o cluster. O pfsync serve mais expecificamente para HA de saída!, por que ele somente sincroniza a tabela
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Manow , eu não me senti ofendido em momento algum no calor de discutir uma solução , vou ver uma material que eu guardei pois eu tenho a necessidade de solucionar tambem, portanto tenho interesse em uma soluçao. Uma coisa que realmente foi esquecido de citar é a questão trafego que entra trafego que sai ... volto a colocar aqui o que achei no material Em Ter, 2006-11-14 às 21:48 -0200, c0re dumped escreveu: Opa ! Valeu Daniel, deu ate umas esclarecidas nus pontos bem bacanas. Gostaria ateh de pedir desculpas ao Marcelo se em algum momento eu tenha sido rispido ou de alguma forma o desrespeitei. As vezes na ansia de expormos nossos pontos de vista e nossa abordagem sobre um determinado assunto, acabamos por exaltar-nos. Se em algum momento tiver feito isso, humildimente peco perdao. Todo mundo tah aqui pra se ajudar, afinal de contas :) No meu caso vou testar o carp +pen, ateh por curiosidade, pq nunca o usei antes. Alguem poderia informar onde fica a pagina do projeto ? []'s -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 http://www.fug.com.br ___ Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! http://br.mobile.yahoo.com/mailalertas/ - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Do manual do balance http://www.inlab.de/balance.html Balance allows the definition of further channel groups. The connection scheme works as follows: balance tries first to establish a connection to a channel in the first group (0), performing the stan- dard round-robin load balancing scheme. If no channel in this group is available, balance pro- ceeds with the next higher channel group. Groups are simply separated with a ! at the command line at startup and can be controlled interactively with the group command. A % instead of a ! as a group separator declares the previous group to be of type hash. This means that instead of a round-robin algorithm, a hash distribution based on the client ip address is used to determine the destination channel. This allows connecting one client always to the same server (e.g. balancing http sessions to a single server). Hosts may be specified either by hostname or by IP address. Por ts may be specified either by name (as listed in /etc/services) or numerically. If no por t is specified in a destination, the desti- nation port defaults to the source port that balance controls. -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 http://www.fug.com.br ___ Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! http://br.mobile.yahoo.com/mailalertas/ - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Nossa, isso tudo o PF em rdr faz, round, hash, source. por porta, por range, em full range. Att, RS On 11/16/06, Marcello Costa [EMAIL PROTECTED] wrote: Do manual do balance http://www.inlab.de/balance.html Balance allows the definition of further channel groups. The connection scheme works as follows: balance tries first to establish a connection to a channel in the first group (0), performing the stan- dard round-robin load balancing scheme. If no channel in this group is available, balance pro- ceeds with the next higher channel group. Groups are simply separated with a ! at the command line at startup and can be controlled interactively with the group command. A % instead of a ! as a group separator declares the previous group to be of type hash. This means that instead of a round-robin algorithm, a hash distribution based on the client ip address is used to determine the destination channel. This allows connecting one client always to the same server (e.g. balancing http sessions to a single server). Hosts may be specified either by hostname or by IP address. Por ts may be specified either by name (as listed in /etc/services) or numerically. If no por t is specified in a destination, the desti- nation port defaults to the source port that balance controls. -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 http://www.fug.com.br ___ Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! http://br.mobile.yahoo.com/mailalertas/ - 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: [EMAIL PROTECTED] ICQ: 78778973 GTalk: [EMAIL PROTECTED] Skype: stockrt http://stockrt.unicruz.edu.br - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Marcelo, veja: Failover e Load Balance é sim simples de se fazer, o PF resolve tudo isso, com pfsync, CARP e rdr. Ponto. Compartilhar os dados, centralizar, isso sim é uma problema, e seria exatamente sobre isso que eu gostaria que alguém aqui se manifestasse. Existe alguma maneira eficiente de se ter um storage redundante montado sobre FreeBSD (ou mesmo Linux, Open, enfim...) baseado TOTALMENTE em soluções livres? Esse é o ponto. :) Os /tmp poderiam ficar no storage, sem problemas, mesmo. Você vê algum problema? Tudo bem, muda o diretório de sessions nos teus servers www e aponta este novo caminho para dentro do storage, em área compartilhada, assim vc mantém os /tmp isolados. O problema é o storage gente alguém? Att, RS On 11/16/06, Marcello Costa [EMAIL PROTECTED] wrote: Acho que se para para pensar um pouco vai entender o que eu disse e nem vc ou ninguem nessa lista tem que concordar comigo, para mim ter que compartilhar o /tmp em dois servidores é gambiarra e nunca deixarei um admin fazer isso sem esgotar todas as possiveis opções Em Qui, 2006-11-16 às 09:45 -0200, Rogério Schneider escreveu: 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. 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). 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? 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. 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 :) Agora falar mal do PF tem que estar pesado né? Pode parando Att, RS On 11/14/06, Daniel Bristot de Oliveira [EMAIL PROTECTED] wrote: Nossa essa thread rendeu hehe. Ja usei Pen, Carp, VRRP e rdr com source track no PF Porém, isto é para balanceamento de carga entrante, isto é, conexões entrando na minha rede, para eu servir. O artigo, carp e pfsync que o irado se referenciou, é um failover de um gateway, NAT... de conexões saindo. E fugiu um pouco do escopo da thread, mas vamos lá O carp, como o nome dis, é um protocolo de redundância de endereço comum. Ele trabalha em nível de ARP, e não em nivel IP, como o vrrp faz. Ele foi feito para ser utilizado em qualuer lugar que se possa ou precize redundância pasiva, isto é, um espera o outro cair e assume. Load Balance com o carp, é feito em nivel arp, e por isto ele só funciona em rede local, por exemplo: duas maquinas estão fazendo um host virtual, onde as duas possuem um estado mestre e um escravo do emsmo endereço, desta forma teremos dois mestres, e dois recebendo as conexõs, porém, a divisão de carga é feita, em round-robin, porém, é utilizado um hash, para definir quem responde um cliente, então, um cliente semrpe vai ser respondido pelo mesmo mestre. Porém! isto só funciona em rede local! o Pen é um load balancer, com possibilidade de rastreamento de clientes. ele recebe uma conexão, redireciona e distribui para outros servidores, ele utiliza escalonamento em round-robin, (Na veradde todos estes que falei, utilizam round-robin por se tratar de escalonamento estático, por que ningeum gerencia estado de carga). Porém, o pen é o único que é possível utilizar prioridades no escalonamento. E o Pen verifica se os servidores estão UP ou não. Porém o Pen executa em nível do usuário, o que adiciona um
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Bem porque querer compartilhar o /tmp se é possivel manter a sessão http do requisitante ? simplesmente não é preciso. Log ? o syslog resolve isso , pode ter um servidor que sera o master dos logs. Bem me lembro que tem um exemplo com freebie sendo usado pra cluster via nfs , funciona claro , mas não é o caso. http://www.onlamp.com/pub/a/bsd/2004/07/01/freesbie.html Apache tem a sua solução : http://httpd.apache.org/docs/2.2/mod/mod_proxy_balancer.html http://www.backhand.org/mod_backhand/ Achei outros com java , vadi retro , amenos que vc use tomcat http://www.samag.com/documents/s=1155/sam0101a/0101a.htm Material muito bom esse aqui : http://www.enterux.com/en/solutions/load-balancing-high-volume-solutions Citado varias vezes http://www.tummy.com/journals/entries/scott_20050324_171814 http://www.linux-ha.org/Heartbeat Balance já foi colocado na lista Tem varias formas de fazer , apenas acho que o problema não precisa passar a ser storage. Storage , o geom pode ajudar virtualizando ou to falando tremenda besteira ? Em Qui, 2006-11-16 às 14:27 -0200, Rogério Schneider escreveu: Marcelo, veja: Failover e Load Balance é sim simples de se fazer, o PF resolve tudo isso, com pfsync, CARP e rdr. Ponto. Compartilhar os dados, centralizar, isso sim é uma problema, e seria exatamente sobre isso que eu gostaria que alguém aqui se manifestasse. Existe alguma maneira eficiente de se ter um storage redundante montado sobre FreeBSD (ou mesmo Linux, Open, enfim...) baseado TOTALMENTE em soluções livres? Esse é o ponto. :) Os /tmp poderiam ficar no storage, sem problemas, mesmo. Você vê algum problema? Tudo bem, muda o diretório de sessions nos teus servers www e aponta este novo caminho para dentro do storage, em área compartilhada, assim vc mantém os /tmp isolados. O problema é o storage gente alguém? Att, RS -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 http://www.fug.com.br ___ Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! http://br.mobile.yahoo.com/mailalertas/ - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Olá Lista... Poisé irado, vi isto no br-linux... Sobre o assunto, o FAQ do PF está traduzido para o pt_BR, e também fala sobre isto em: http://www.openbsd.org/faq/pf/pt/carp.html A FAQ do PF é ótima, e muita gente não sabe que ela existe em português ainda. Ainda tem o atigo no FUG. http://www.fug.com.br/content/view/124/77/ Que adiciona o tratamento de dependencia de interfaces com ifstated. Um abraço! -- Daniel Bristot de Oliveira R João Paez 409 Ap 202 Sta Augusta - Criciúma - SC CEP 88805440 Brazil +55-48-91032512 - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Já eu gsotei muito deste artigo aqui: http://www.countersiege.com/doc/pfsync-carp/ Pena que ele não lança as regras do sistema complexo, mas isso pode ser recriado. Existem outras formas de balancear ainda.. Quem sabe usar um pen? Bem, poderia ficar ai uma discussão para ver qual seria o melhor método. pen, arp-balance, rdr com address pool? outro? Att, RS On 11/14/06, Daniel Bristot de Oliveira [EMAIL PROTECTED] wrote: Olá Lista... Poisé irado, vi isto no br-linux... Sobre o assunto, o FAQ do PF está traduzido para o pt_BR, e também fala sobre isto em: http://www.openbsd.org/faq/pf/pt/carp.html A FAQ do PF é ótima, e muita gente não sabe que ela existe em português ainda. Ainda tem o atigo no FUG. http://www.fug.com.br/content/view/124/77/ Que adiciona o tratamento de dependencia de interfaces com ifstated. Um abraço! -- Daniel Bristot de Oliveira R João Paez 409 Ap 202 Sta Augusta - Criciúma - SC CEP 88805440 Brazil +55-48-91032512 - 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: [EMAIL PROTECTED] ICQ: 78778973 GTalk: [EMAIL PROTECTED] Skype: stockrt http://stockrt.unicruz.edu.br - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Pena que ele não lança as regras do sistema complexo, mas isso pode ser recriado. Existem outras formas de balancear ainda.. Quem sabe usar um pen? Bem, poderia ficar ai uma discussão para ver qual seria o melhor método. pen, arp-balance, rdr com address pool? outro? Seria interessante se o pen puder guardar sessoes em conexões http. Por exemplo, tenho dois Pounds aqui, em redundância, no esquema do carp. Mas é muito ruim ter um maquinão parado podendo ser usado apenas na possibilidade do primário dar algum problema ou ser interrompido para manutenção. O carp dispõe de um load balancer built in, mas, se não me engano, ele trabalha num modo round robin. Desta forma fica inviável usar o load balance dele para criação de um cluster ativo/ativo quando se tem aplicações web usando PHPSESSID ou JSESSIOND, como é o meu caso. Nunca usei o pen. Aproveitando o ensejo, gostaria de saber se há essa possibilidade (ou até mesmo se alguém já o está usando), pelo que falaram ele faz pool de endereços, isso já resolve muitos dos problemas. []'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
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Em Ter, 2006-11-14 às 17:51 +, c0re dumped escreveu: Pena que ele não lança as regras do sistema complexo, mas isso pode ser recriado. Existem outras formas de balancear ainda.. Quem sabe usar um pen? Bem, poderia ficar ai uma discussão para ver qual seria o melhor método. pen, arp-balance, rdr com address pool? outro? Seria interessante se o pen puder guardar sessoes em conexões http. Por exemplo, tenho dois Pounds aqui, em redundância, no esquema do carp. Mas é muito ruim ter um maquinão parado podendo ser usado apenas na possibilidade do primário dar algum problema ou ser interrompido para manutenção. O carp dispõe de um load balancer built in, mas, se não me engano, ele trabalha num modo round robin. Desta forma fica inviável usar o load balance dele para criação de um cluster ativo/ativo quando se tem aplicações web usando PHPSESSID ou JSESSIOND, como é o meu caso. Nunca usei o pen. Aproveitando o ensejo, gostaria de saber se há essa possibilidade (ou até mesmo se alguém já o está usando), pelo que falaram ele faz pool de endereços, isso já resolve muitos dos problemas. []'s Não seria melhor usar o carp para redundancia de links, para isso que ele foi projetado, e diferente entradas de dns para web ? -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 http://www.fug.com.br ___ Yahoo! Acesso Gr�tis - Internet r�pida e gr�tis. Instale o discador agora! http://br.acesso.yahoo.com - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
O carp não faz redundância (failover) de links, ele faz sim, redundância entre duas máquinas, que estejam usando o protocolo *(carp). Acontece que na maioria das vezes essas duas máquinas são os firewalls (implemetação mais comum pro carp), que proveêm o *serviço* de filtragem de pacotes. :) Redundâcia de links é feita entre routers. Você pode usá-lo, para implementar redundância entre quaisquer duas ou mais máquinas que estejam usando o protolcolo e estejam com a mesma mesma vhid e usando um mesmo password, para cada interface que você habilitá-lo. Essa máquina não precisa necessariamente disponibilizar uma conexão com a internet, ou filtrar pacotes. No meu caso uso em web servidores intra e internet, alguns usam com o squid, e por aí vai. []'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
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
CARP é o Protocolo de Redundância de Endereço Comum (Common Address Redundancy Protocol). Seu objetivo principal é permitir que múltiplos hosts no mesmo segmento de rede compartilhem um endereço IP. CARP é uma alternativa livre e segura ao Virtual Router Redundancy Protocol (VRRP) e ao Hot Standby Router Protocol (HSRP).] CARP funciona permitindo um grupo de hosts no mesmo segmento de rede compartilhar um endereço IP. Este grupo de hosts é referido como um grupo de redundância. O grupo de redundância é atribuído a um endereço IP que é compartilhado entre os membros do grupo. Dentro do grupo, um host é designado o master e o resto como backups. O host master é o que atualmente segura o IP compartilhado; ele responde a qualquer tráfego ou requisições ARP direcionadas para ele. Cada host pode pertencer a mais que um grupo de redundância por vez. Um uso comum para o CARP é criar um grupo de firewalls redundantes. O IP virtual que é atribuído ao grupo de redundância é configurado nas máquinas clientes como o gateway padrão (default). Caso o firewall sofra uma falha ou seja desligado, o IP se moverá para um dos firewalls backup e o serviço vai continuar sem ser afetado. http://www.openbsd.org/faq/pf/pt/carp.html Acho que me fiz entender ... -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 http://www.fug.com.br ___ Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! http://br.mobile.yahoo.com/mailalertas/ - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Isso é justamente o que eu disse no meu e-mail, só que com menos palavras. A não ser que algum roteador (que em 99.999% das instalações é o gateway do firewall) use CARP para implementação de redundância (todos que eu conheço usam VRRP, pelo menos da cisco), minha afirmativa que o CARP não provê redundância de links ainda é válida. - a menos que se esteja usando um servidor com FreeBSD sobre ATM/Frame Relay+CARP (coisa que eu nunca vi), aí realmente vai ser uma exceção à regra. Acho que estamos num conflito de nomenclaturas. Acredito que o que você esteja se referindo quando diz link, é a conectividade provida pelo firewall através do *serviço* de filtragem de pacotes. Quando eu cito link, me refiro à uma ATM/Frame Relay+Router ou algum outro DCE. []'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
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
O *FOCO* do CARP é prover redundancia de IP , fazer isso para webserver *na minha modesta opinião* é guambiarra simples coloque dois servers apache rodando , sincronize com que quiser , poder nfs , rsync, etc ... basta colocar no dns 192.168.0.10 - web01.dominio 192.168.0.11 - web02.dominio dominio alias - web01,web02 não precisou de nadinha , se um cair o outro responde nem precisa se preocupar com session etc ... mas vc quer usar algo , ok http://www.freebsd.org/cgi/ports.cgi?query=heartbeatstype=all Mas a FALTA de ferramentas para fazer coisas deste tipo neste caso significa que não é por ai o caminho. Quer implementar algo realmente bom para isso : http://tinydns.org/ Proxy reverso, balance http://www.freebsd.org/cgi/url.cgi?ports/dns/dns_balance/pkg-descr http://www.freebsd.org/cgi/url.cgi?ports/www/pound/pkg-descr http://www.freebsd.org/cgi/url.cgi?ports/net/balance/pkg-descr http://www.freebsd.org/cgi/ports.cgi?query=balancestype=allsektion=all Eu acho que isso são soluções viaveis e com menos riscos que compartilhar /tmp e muito mais elegante -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 http://www.fug.com.br ___ Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora! http://br.mobile.yahoo.com/mailalertas/ - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Vamos lá: Em 14/11/06, Marcello Costa[EMAIL PROTECTED] escreveu: O *FOCO* do CARP é prover redundancia de IP , fazer isso para webserver *na minha modesta opinião* é guambiarra Falou tudo ! Camada de rede é diferente da camada de aplicação. Você afirma que o CARP trabalha na camada de rede (IP). Ora, se carp provê conectvidade e redunância numa camada mais baixa e seguindo o modelo OSI de interoperabilidade uma camada apenas entrega o payload pra outra, como se pode afirmar que usar carp pra webserver é gambiarra, sendo que o HTTP é na camada de aplicação ? Sendo assim, firewalls são gambiarras rodando em nível de kernel ! Acho que você está confundindo CARP com PFSYNC que são duas coisas complementares, mas completamente distintas. A função do carp é prover um endereço redundância de hosts. Ponto. Pfsync é quem faz o sincronismo da tabela de estado de conexões do firewall. O pfsync pode perfeitamente funcionar semo carp, embora sem muita utilidade, e vice versa. Veja mina situação |-SERVER1- | CLI-1.2.3.4 | VARIOS APACHES AQUI ATRAS | |-SERVER2- O endereço 1.2.3.4 é o endereço virtual (carp) do SERVER1 e do SERVER2 (usando pound). Existe uma entrada no DNS que aponta pra esse endereço, ou seja, www.meuservidorweb.com.br aponta para 1.2.3.4. Esses dois hosts tem, além da interface carp, outro endereço real, pois o carp precisa saber pra quem realmente passar o pedido para que ele seja processado. Independentemente se ele seja um pocote com um cabeçalho HTTP ou uma requisição RPC. Pra ele o que importa é saber quem é o carp device master e passar o pedido pra ele. O que o master vai fazer, não interessa pro carp. simples coloque dois servers apache rodando , sincronize com que quiser , poder nfs , rsync, etc ... basta colocar no dns 192.168.0.10 - web01.dominio 192.168.0.11 - web02.dominio dominio alias - web01,web02 não precisou de nadinha , se um cair o outro responde nem precisa se preocupar com session etc ... mas vc quer usar algo , ok Mas é justamente isso que eu já tenho. Além disso, o balanceamento de carga do DNS também é round robin, e eu acabo recaindo no mesmo problema. O que eu não quero é deixar uma máquina ociosa. Logo, um cluster ativo/ativo ao invés de um ativo/passivo. Por isso a preucupação com as sessions. Veja bem, esses dois hosts são dois pounds, como disse anteriormente. São eles quem tem que prover a redundância, se eu fizer redundância com os apaches que estão atrás deles, teria que comprar um host extra, ou na melhor das hipóteses usar um virtualizador da vida, para cada um que tivesse. -- 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
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
O CARP foi feito com foco em firewall , não precisa levar tudo ao pé da letra, redundancia de ip usando pfsync etc e tal , isso ta claro no manual e todo mundo sabe não há questionamento meu nem seu qto a isso . Quanto ao webserver ai sim , qual a solução ? estou esperando chegar minhas maquinas no final do ano , na verdade uma e a *antiga* seria o backup , mas quero dar serviço para ela , então pretendo colocar as duas respondendo web, juntas , nada de master slave, balance pode ser setado por requisição (origem) sim , dns também , não somente por robin. Veja se isso resolve seu problema ? http://cr.yp.to/djbdns/balance.html http://cr.yp.to/djbdns.html -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 http://www.fug.com.br ___ Yahoo! Acesso Gr�tis - Internet r�pida e gr�tis. Instale o discador agora! http://br.acesso.yahoo.com - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
2006/11/14, Marcello Costa [EMAIL PROTECTED]: O CARP foi feito com foco em firewall , não precisa levar tudo ao pé da letra, redundancia de ip usando pfsync etc e tal , isso ta claro no manual e todo mundo sabe não há questionamento meu nem seu qto a isso . CARP é o Protocolo de Redundância de Endereço Comum (Common Address Redundancy Protocol). *** Seu objetivo principal é permitir que múltiplos **HOSTS** no mesmo segmento de rede compartilhem um endereço IP * Olha, realmente o carp não foi projetado com foco em firewall, ele foi concebido como uma idéia muito mais abrangemte. Leia seu post e o que você enviou da página do carp e reavalie o que acabou de afirmar. Quanto ao webserver ai sim , qual a solução ? estou esperando chegar minhas maquinas no final do ano , na verdade uma e a *antiga* seria o backup , mas quero dar serviço para ela , então pretendo colocar as duas respondendo web, juntas , nada de master slave, balance pode ser setado por requisição (origem) sim , dns também , não somente por robin. Veja se isso resolve seu problema ? http://cr.yp.to/djbdns/balance.html http://cr.yp.to/djbdns.html -- Marcello Costa BSD System Engineer unixmafia at yahoo dot com dot br FUG-BR #156 Do primeiro link: Suppose you have 50 identical www.heaven.af.mil web servers running on IP addresses 1.2.3.150, 1.2.3.151, and so on. You can simply list all their addresses in /service/tinydns/root/data: ... When a DNS cache asks for the IP address of www.heaven.af.mil, tinydns will automatically return a random set of 8 addresses. Tendo isso em mente e o fato de que o http é um protocolo stateless, fica inviável usar esse solução no meu caso que tenho aplicações com extenso uso de sessões. -- 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
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Nossa essa thread rendeu hehe. Ja usei Pen, Carp, VRRP e rdr com source track no PF Porém, isto é para balanceamento de carga entrante, isto é, conexões entrando na minha rede, para eu servir. O artigo, carp e pfsync que o irado se referenciou, é um failover de um gateway, NAT... de conexões saindo. E fugiu um pouco do escopo da thread, mas vamos lá O carp, como o nome dis, é um protocolo de redundância de endereço comum. Ele trabalha em nível de ARP, e não em nivel IP, como o vrrp faz. Ele foi feito para ser utilizado em qualuer lugar que se possa ou precize redundância pasiva, isto é, um espera o outro cair e assume. Load Balance com o carp, é feito em nivel arp, e por isto ele só funciona em rede local, por exemplo: duas maquinas estão fazendo um host virtual, onde as duas possuem um estado mestre e um escravo do emsmo endereço, desta forma teremos dois mestres, e dois recebendo as conexõs, porém, a divisão de carga é feita, em round-robin, porém, é utilizado um hash, para definir quem responde um cliente, então, um cliente semrpe vai ser respondido pelo mesmo mestre. Porém! isto só funciona em rede local! o Pen é um load balancer, com possibilidade de rastreamento de clientes. ele recebe uma conexão, redireciona e distribui para outros servidores, ele utiliza escalonamento em round-robin, (Na veradde todos estes que falei, utilizam round-robin por se tratar de escalonamento estático, por que ningeum gerencia estado de carga). Porém, o pen é o único que é possível utilizar prioridades no escalonamento. E o Pen verifica se os servidores estão UP ou não. Porém o Pen executa em nível do usuário, o que adiciona um grande delay nas trasnsações de rede, por estar sujeito a paginação, swap, ter que passar do nivel do kernle para usuário, e devolta do usuário para o kernel, e todas as verificações por trás disto. O PF com rdr faz redirecionamento,. e distribuição em round-robin, com possibilidade de source track, que é o rastreamento de clientes. ele e o pen são compatíveis, porém, o PF não checa estado de clientes, e não tem prioridades no escalonamento. Mas executa em nivel do kernel, e isso da uma direfença grande no desempenho, por que não está em área paginada, não possui tantas restrições ao acesso aos dados da rede, mas tem que cuidar para ele não abusar do sistema :) alem de ser mais facil de aplicar QoS e controle de DoS para o cluster. O pfsync serve mais expecificamente para HA de saída!, por que ele somente sincroniza a tabela state, que é responsável por manter as conexões statefull, ela não sincroniza a tabela source, que faz o source track. Então, ele fica pouco útil para balanceamento de carga entrante, que é feita com o Pen e o rdr do PF. Mas para saída ele é perfeito, as conexões não são interrompidas, saiu ate um video que mostra, se eu não me engano, o Daniel Hartmeyer(grande developer do PF), mostrando um exemplo, onde uma musica estava passando por um gateway com failover, e ele quebrava um dos gateways(literalmente a pauladas), e o carp transferiu estado e o pfsync estava sincronizando, e a musica não parou :) Eu para entrada utilizaria: Load Balance grande = PF+CARP Load balance pequeno = CARP+PEN Para saída: carp e PFsync porém, eu estou apenas expondo minhas ideias, e não sou dono da verdade, cada um pensa como quiser, e eu não tenho nada contra! Um abraço! -- Daniel Bristot de Oliveira R João Paez 409 Ap 202 Sta Augusta - Criciúma - SC CEP 88805440 Brazil +55-48-91032512 - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Cluster de Firewall com carp + pfsync (tutorial)
Opa ! Valeu Daniel, deu ate umas esclarecidas nus pontos bem bacanas. Gostaria ateh de pedir desculpas ao Marcelo se em algum momento eu tenha sido rispido ou de alguma forma o desrespeitei. As vezes na ansia de expormos nossos pontos de vista e nossa abordagem sobre um determinado assunto, acabamos por exaltar-nos. Se em algum momento tiver feito isso, humildimente peco perdao. Todo mundo tah aqui pra se ajudar, afinal de contas :) No meu caso vou testar o carp +pen, ateh por curiosidade, pq nunca o usei antes. Alguem poderia informar onde fica a pagina do projeto ? []'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