Squid com problemas usando Load Balance



  • Souza,

    Poderia passar as telas de configuração que vc fez. seria uma ótima, talvez estamos esquecendo de habilitar ou configurar algo.



  • @thiagomespb:

    a segunda opção sim.. porem a primeira onde fica essa configuração.

    aba access control primeiro campo



  • Ta osso..

    acabei de colocar a faixa de ip da minha rede.. em  access control.. e não funcionou..



  • OK segue um passo a passo do que eu exatamente fiz e quando monitoro os link observo navegação em ambos os link, utilizo Squid + SquidGuard

    E quando desligo um o outro assume

    Melhorias pode falar

    Bom não sei se podia mas estou colocando o link do docx para download

    www.piocom.com.br/download/Loadbalance+FailOver.docx

    abs

    Por Favor postem os resultado aqui.

    Souza Linux



  • Senhores,

    É exatamente como o texto confeccionado pelo Souza Linux. Não há segredo algum fazer Loadbalance/Failover para conexões HTTP/HTTPS com Squid. Basta marcar as opções citadas no texto dele em: System->Advanced->Miscellaneous:

    • Use sticky connections: Que preserva seções HTTPS

    • Allow default gateway switching: Que executa o switching entre os gateways (procurem trabalhar sem "default gateway"… usem os pesos (Tiers) como fez o Souza Linux)

    Nas versões BETA e RCs do pfSense 2.0 nós até tínhamos alguns bugs em relação ao LoadBalance com Squid. Mas tudo isso foi resolvido na versão 2.0 Final e está 100% funcional.

    • Não é mais preciso gerar uma regra em Floating!~

    Abraços!
    Jack



  • @souzalinux:

    Bem, ao que parece estamos enfrentando uma pequena e momentânea instabilidade no blog da comunidade. Mas isso deve ser resolvido até segunda-feira.

    No estamos mais… o blog está novamente no ar: http://www.pfsense-br.org/blog/

    ;)

    Abraços!
    Jack



  • JackL.

    Poderia fazer um tutorial definitivo em relação ao Load Balance + Squid?

    Assim voce poderia tirar todas as duvidas restantes a esse tema e darmos como resolvido o asssunto.

    No tutorial voce poderia explicar como funciona os TIER's. Como e quando colocar TIER1 e TIER2. Esclarecer qual é  relação de peso dos links e como configurar de forma correta.

    Poderia explicar a opção advanced e suas respectivas funções.

    Toda a comunidade iria agradecer mais essa imensa ajuda sua.

    Esperamos pelo seu retorno.

    Abraços

    ATT

    Breno Alencar



  • @breno.uni:

    JackL.

    Poderia fazer um tutorial definitivo em relação ao Load Balance + Squid?

    Assim voce poderia tirar todas as duvidas restantes a esse tema e darmos como resolvido o asssunto.

    No tutorial voce poderia explicar como funciona os TIER's. Como e quando colocar TIER1 e TIER2. Esclarecer qual é  relação de peso dos links e como configurar de forma correta.

    Poderia explicar a opção advanced e suas respectivas funções.

    Toda a comunidade iria agradecer mais essa imensa ajuda sua.

    Esperamos pelo seu retorno.

    Abraços

    ATT

    Breno Alencar

    O balanceamento baseado em tier, tenta usar todos os gateway definidos no mesmo tier antes de tentar outro nível.

    Se você tiver dois links em tier1 e um link em tier2, este último só será utilizado caso os dois primeiros fiquem offline



  • Souza,

    Vc já testou acessar a internet quando o link 1 estiver fora ?? pq o load balance+fail over junto com squid funciona somente com
    o link 1 ativo, se ele cair da erro..

    Faz o teste ai.. por favor.. e posta o resultado..



  • Pessoal,

    Queria dizer a todos que reinstalei o pfsense, instalei o squid, refiz toda configuração do load balancee e deu certo.. Estou usando o seguindo
    link e não apresenta a mensagem de erro do squid.



  • OK pode postar qual tutorial você seguiu e versão do pfsense para que nossos amigos que estão com problema poderem resolver?

    abs

    Souza Linux



  • @marcelloc:

    @breno.uni:

    JackL.
    Poderia fazer um tutorial definitivo em relação ao Load Balance + Squid?
    Assim voce poderia tirar todas as duvidas restantes a esse tema e darmos como resolvido o asssunto.
    No tutorial voce poderia explicar como funciona os TIER's. Como e quando colocar TIER1 e TIER2. Esclarecer qual é  relação de peso dos links e como configurar de forma correta.
    Poderia explicar a opção advanced e suas respectivas funções.
    Toda a comunidade iria agradecer mais essa imensa ajuda sua.
    Esperamos pelo seu retorno.

    O balanceamento baseado em tier, tenta usar todos os gateway definidos no mesmo tier antes de tentar outro nível.
    Se você tiver dois links em tier1 e um link em tier2, este último só será utilizado caso os dois primeiros fiquem offline

    Bem, em relação aos Tiers (pesos/prioridades), o marcelloc já matou a lebre. Funciona exatamente como ele colocou… Em outras palavras, no caso específico de 2 links WANs, se ambos tiverem o mesmo Tier, você tem um LoadBalance implementado. Do contrário (gateways com Tiers diferentes), você tem um Failover implementado. Lembrando que quanto menor o Tier, maior sua prioridade no grupo de gateways!

    breno.uni, assim que eu conseguir o menor tempo disponível possível, farei um tutorial "mais completo'' sobre o tema e deixarei no nosso blog (é sempre bacana visitar o blog semanalmente, pelo menos - afim de se manter atualizado com o material postado por lá): http://www.pfsense-br.org/blog/

    Abraços!
    Jack



  • Ótima noticia Jackl.

    Com o seu tutorial elaborado com certeza poderemos dar como resolvido todos os tópicos relativos ao loadbalance + squid e assim ajudar todos os colegas que estão tendo dificuldades em relação ao assunto.

    Nossos agradecimentos pela ajuda e aguardamos o seu material em nosso blog.

    Abraço e um ótimo dia de trabalho.

    ATT

    Breno Alencar



  • JackL,

    O domínio está suspenso do blog pfsense…. se vc tiver problemas em ativar.. eu tenho dois servidores de hospendagem..
    e posso disponibilizar sem custo para o blog.

    Qualquer coisa entra em contato..



  • Tenho conta em provedor de hospedagem também, um domínio ou 100 é o mesmo preço  ;)



  • Perfeitamente Senhores…

    O problema de inoperância do blog se deu em função de um incidente técnico com a VM do webhosting. O pessoal responsável já está verificando e em breve tudo deve estar normalizado.

    Nota importante: Se o problema persistir ou tivermos limitações técnicas para executarmos o nosso planejamento (repositório dos pacotes desenvolvidos por nossos membros, etc…), certamente vamos migrar o blog para outro webhosting! ;)

    Abraços!
    Jack



  • O blog está no ar novamente! ;)

    Abraços!
    Jack



  • Opa blz

    e o tuto defintivo para o loadbalance ?

    Pois nosso amigo resolveu o problema mas não publicou qual tutorial utilizou isso iria agilizar o fum num todo quando resolvermos algo e postar qual tudo foi utilizado, versão etc

    abs

    Souza Linux



  • Jackl. Boa tarde.

    Sei que seu tempo anda muito, muito corrido esses dias. Curso, Forum, etc..etc..etc..

    Mas voce poderia nos passar alguma posição sobre o seu tutorial definitivo do Load Balance + Squid? O amigo que postou a duvida chegou na solução mais não compartilhou ainda conosco.

    Muito obrigado e um ótimo dia pra voce.

    ATT

    Breno Alencar



  • amigo,

    Eu não compartilhei ainda.. pq o servidor que eu fiz o load balance esta indo via correio para outro estado.. Assim que ele estive no ar.. eu coloco as telas.
    porem já adianto que é quase idêntico ao restante do tutorial..

    Thiago



  • Ótimo Thiago. Aguardamos seu tutorial. Obrigado pelo retorno.

    Abraços

    ATT

    Breno Alencar



  • Breno,

    Os dois tutoriais que eu postei estão totalmente completos e funcionam perfeitamente com a versão 2.0 e 2.0.1 do PFSense. Se com você não está funcionando, ou alguma informação foi passada errada ou não foi passada para nós. Não há segredo como os colegas disseram.

    Sobre as Tier, pense o seguinte, as Tier vão de 1 até 5… Eu tenho 3 conexões, quero que elas façam Load Balance e Fail Over entre elas.

    Supondo que:
    Conexão 1 > 20 Mbps
    Conexão 2 > 10 Mbps
    Conexão 3 > 1 Mbps

    Nesse caso os Tiers ficariam:
    Conexão 1 > Tier 1
    Conexão 2 > Tier 2
    Conexão 3 > Tier 3

    Dessa forma as conexões são feitas pela conexão 1, se ela estiver sobrecarregada ou fora do ar, a conexão 2 assume, e se a 2 falhar a 3 assume, tudo isso automaticamente, para o Squid nada mudou.

    Siga os tutoriais passo a passo, verifique se não há regras de firewall bagunçando o caminho dos pacotes e etc.

    EDITADO:
    Eu tenho quatro clientes com conexões redundantes(Fail Over) que mesmo com Tier 1 e Tier 2 fazem load Balance, basta mudar o tipo do Grupo de "Member Down" para "High Latency or Packet Loss".
    Isso faz com que o PFSense verifique a latencia da conexão, se ela estiver sendo usada, obviamente a latencia aumenta, assim o PFSense joga para a conexão no Tier abaixo.
    Com a perca de pacotes é a mesma coisa, se a conexão não oferece resultados de ICPM(Ping), obviamente ela está offline.
    Fiz esse teste em um cliente com duas conexões de 4Mbps, coloquei um download com o FTP da UNICAMP e ocupou a banda da conexão 1, quando abri um video no youtube, lá estava a banda da conexão 2 sendo usada.

    Eu realmente achei fantástica a facilidade(de configuração) como isso foi implementado no PFSense.



  • Pessoal,

    Acho que os usuários breno.ui e manutenspb postaram algo relevante em seus posts sobre os erros apresentados:

    http://forum.pfsense.org/index.php/topic,45232.msg236249.html#msg236249
    http://forum.pfsense.org/index.php/topic,45232.msg236409.html#msg236409

    Tentei realizar o seguinte procedimento seguindo o tutorial postado pelo marcello no mesmo post e obtive o mesmo problema apresentado pelo breno.ui e o manutenspb. Então fui investigar e achei algo um tanto interessante.

    O squid.conf gerado pelo Pfsense  contem o trecho abaixo

    Do not edit manually !

    http_port 192.168.X.X:3128
     http_port 127.0.0.1:3128
     http_port 127.0.0.1:3128 transparent

    O que ao meu ver pode está errado, pois o modo transparente deveria funcionar na minha rede http_port 192.168.X.X:3128 ( se eu selecionar somente a interface LAN na tela do squid o codigo é gerado perfeitamente)

    Do not edit manually !

    http_port 192.168.X.X:3128 transparent

    Então modifiquei manualmente o squid.conf para o seguinte

    Do not edit manually !

    http_port 192.168.X.X:3128 transparent
     http_port 127.0.0.1:3128 transparent
     http_port 127.0.0.1:3128

    BINGO! o Loadbalance  passou a funcionar!

    Em resumo:

    ** Funciona (codigo alterado manualmente)**
     # Do not edit manually !
     http_port 192.168.X.X:3128 transparent
     http_port 127.0.0.1:3128 transparent
     http_port 127.0.0.1:3128

    ** Não FUnciona (codigo gerado pela interface)**
     # Do not edit manually !
     http_port 192.168.X.X:3128
     http_port 127.0.0.1:3128
     http_port 127.0.0.1:3128 transparent

    Resultado

    while [ $ ]; do links -dump www.whatismyip.com | grep ' Your IP Address Is:' ; sleep 2; done
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 189.29.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX
      Your IP Address Is: 187.17.XXX.XXX

    Alguém por favor poderia testar  isso!?

    att,



  • Vou testar..



  • ccesario,

    O meu sempre funcionou e não precisei editar o squid.conf. Por curiosidade fui ver como estava no squid.conf e pra minha surpresa:

    Do not edit manually !

    http_port 10.2.xxx.xxx:8080 transparent
    http_port 127.0.0.1:8080 transparent
    http_port 127.0.0.1:80 transparent



  • Obrigado pelas informações pessoal, vou fazer mais alguns testes

    att



  • Pois é, em todos os testes aqui, o arquivo é gerado de forma equivocada :P

    Será algum problema do generator!?

    Alguém mais testou isso !?



  • ccesario,

    Qual squid você esta usando?



  • @marcelloc:

    ccesario,

    Qual squid você esta usando?

    Marcello,

    Para esses testes o squid-2.7.9_1



  • @ccesario:

    Para esses testes o squid-2.7.9_1

    Já viu se o squid3 gera o mesmo erro no arquivo de configuração?



  • @marcelloc:

    @ccesario:

    Para esses testes o squid-2.7.9_1

    Já viu se o squid3 gera o mesmo erro no arquivo de configuração?

    Ainda não, estou ainda tentando resolver aquele problema ( http://forum.pfsense.org/index.php/topic,48347.msg255973.html#msg255973 ) para colocá-lo em produção, mas esta meio complicado descobrir a causa/origem.



  • @ccesario:

    Ainda não, estou ainda tentando resolver aquele problema ( http://forum.pfsense.org/index.php/topic,48347.msg255973.html#msg255973 ) para colocá-lo em produção, mas esta meio complicado descobrir a causa/origem.

    tenta compliar ele sem o strict http compliant e o transparent mode para ipfw



  • @marcelloc:

    @ccesario:

    Ainda não, estou ainda tentando resolver aquele problema ( http://forum.pfsense.org/index.php/topic,48347.msg255973.html#msg255973 ) para colocá-lo em produção, mas esta meio complicado descobrir a causa/origem.

    tenta compliar ele sem o strict http compliant e o transparent mode para ipfw

    Pode por favor dar um squid -v no seu squid3 por favor ?



  • Também estou com o mesmo problemas, LoadBalance funciona perfeito sem squid, com squid somente Fail-over.
    Fiz os passos para corrigir o problema de quando seta a loopback no squid, o squid volta a funcionar, mas sem loadbalance sem pre sai pela wan1
    Estou usando a versão 2.0.1 será que alguem conseguiu fazer funcionar a 2.0.1, uma coisa a observar é que acompanhar trafego pelos graficos e dizer que está balanceando não é correto, pois qualuer outro trafego que não seja http não vai passar pelo squid e cai no loadbalance que funciona correto. O teste correto acho que seria igual do ccesario
    O que ja fiz a partir do pre suposto que o LoadBalance funciona sem squid.

    1 ) Adicionei a regra tcp_outgoing_address 127.0.0.1; no squid.
    2 ) setei ele nas duas interfaces (LAN e loopback)
    3 ) Corrigi o bug que da´quando seta o squid transparent na loopback.
    4 ) Criei a regra floating com origen any e depois com origen 127.0.0.1
    5 ) Criei as duas regras Nats WAN1 e WAN2.



  • @tpramos:

    5 ) Criei as duas regras Nats WAN1 e WAN2.

    Não seria outbound nat?



  • Senhores,

    Esta questão já não está sendo tratada neste outro tópico? http://forum.pfsense.org/index.php/topic,46245.msg258531.html#msg258531

    Repetir assuntos em tópicos diferentes é horrível pra organização geral do fórum!  :-\

    Abraços!
    Jack



  • Estou testando o squid3 com dois links embratel e OI.. só consigo navegar
    usando o load balance, se tirar no squid a interface de "loopback", no meu caso
    se eu desativar o link da OI.. eu navego.. porem se eu desativar o link da embratel
    eu não navego..



  • tpramos,

    Você já leu na íntegra este outro tópico: http://forum.pfsense.org/index.php/topic,37776.0.html ?

    As dicas do amigo felipeortega são preciosas…

    De todo modo, quando estiver trabalhando com LoadBalance + Squid, procure não trabalhar com "default gateway"... Esta é a dica master! ;)

    Abraços!
    Jack



  • OK, vou testar sem o Default Gateway, essa eu ainda não tinha lido.
    Depois posto se deu certo.
    Abraço. Obrigado pela ajuda.



  • Pessoal bom dia, chove por ai? pois aqui em araraquara ta um diluvio hehe

    Bom, ja li, reli, trili acho que um milhão de posts, tutoriais, videos em todas as linguas mas sem solução pra loadbalance+failover+squid.

    estou usando a versão 2.0.1 release i386
    squid versão 3
    e squidguard

    Tudo vai bem, mas quando coloco o loadbalance pra rodar, não vai nem fedendo

    Minhas configurações são as seguintes:

    Dois links estáticos, com gateways estáticos e online

    Em system>gateways tem os dois gateways como monitores os dns do google, não defini nenhum gateway como padrão.

    Em system>groups criei a regra com os dois gateways, tier 1 pros dois em trigger level deixei em packet loss or high latency

    Em firewall>rules na lan coloquei na regra padrão o gateway do loadbalance, só deixando um adendo que essa regra ta por ultimo, não consegui de forma alguma mudar ela de lugar, se alguem souber como me indique por favor.

    Em system>advanced>miscellaneous habilitei as duas opções em load balance (use sticky connections e allow defaoult gateway switting)

    Em services>proxy server>general (squid3) somente esta selecionada a interface LAN, o resto ta padrão

    O squidguard ta com uma black list, habilitado os bloqueios pra porno, rede social etc, e ta bloqueando

    Só que, não vejo nada saindo pelo segundo link. WAN2 (loadbalance não funciona)

    Quando eu tiro o cabo da WAN2, beleza a navegação continua sem problemas

    Se tiro o cabo da WAN1, dai fedeu, para tudo, não navega mais nada (failover não funciona)

    Alguma alma nessa comunidade conseguiu de fato fazer o loadbalance e failover funcionar junto com o squid?


Log in to reply