Squid com problemas usando Load Balance



  • Marcello. O HAVP estava como parent do squid. Mas para dar continuidade ao nosso tópico sem mudar de direção acabei desistalando o HAPV para que o tópico fique somente relativo ao loadbalance + squid.

    Mas um colega no tópico relata um erro igual ao meu usando o squid em modo transparente com loadbalance.

    Ficamos no aguardo de suas orientações.

    Abraços

    ATT

    Breno Alencar



  • Ficamos no aguardo de suas orientações.

    Não fui eu que fiz o tutorial, apenas o indiquei para ilustar como criar as regras na "floating rules"  :)

    Vou tentar seguir os passos para ver onde para, mas não tenho este ambiente aqui em casa, pode demorar um pouco.

    Tente ver o que pode estar errado comparando este tutorial de squid.

    att,
    Marcello Coutinho



  • Marcelo,

    Vc pode simular o ambiente usando virtual box e tres placas virtuais, eu mesmo simulei aqui em casa, só que usando uma maquina física que tenho para teste, coloquei os dois links, um com ip fixo e outro com dhcp e seguir o tutorial.. e tambem apresentou o mesmo erro dos demais colegas, somente o uso do squid.

    pode q pode ter aalgo errado ai..



  • Galera,

    aparece que o negocio é mais serio que eu imaginava.

    http://forum.pfsense.org/index.php?topic=37083.45

    E fica duvida.. será que funciona mesmo o Balanceamento de Carga+Failover+squid ?? Já tentei de tudo, inclusive
    adicionado uma regra de DNS 53 em FloatingRules e não funcionou..



  • você configurou estes passos?

    After manually adding my subnet in the "Allowed subnets" box, my dual wan, squid setup is now functioning using pfSense Version 2.0-Release (i386)

    but as the Ermal said, just putting the "tcp_outgoing_address 127.0.0.1" worked for me.



  • Marcelo,

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

    Eu só espero não ter que mudar para outra distribuição.. já sai do endian para pfsense justamente
    por isso.



  • Eu utilizou loadbalance com squid sem problmas



  • 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 ?


Log in to reply