CentOS 6.8 com Squid 3.1.23 - Lento, demora em responder

1. CentOS 6.8 com Squid 3.1.23 - Lento, demora em responder

Jeferson Fernandes da Silva
Dukmad

(usa CentOS)

Enviado em 24/10/2016 - 16:20h

Olá a todos,
Após dias de buscar e modificações no servidor, até uma nova instalação, me sinto obrigado a abrir um novo tópico sobre o tema.

O caso é o seguinte, mês passado tive um problema com o servidor firewall/squid (precisamente com o hardware, perdi o servidor) e tive de instalar um do zero, fácil, já realizei este procedimento diversas vezes. Porém como nem tudo são flores, após a instalação encontrei problemas de lentidão utilizando o SQUID que não encontrei meios de resolver.

O servidor é uma VM que esta rodando em VMWare 6.0 ESXI.
Descrição é:
CPU: 1 CPU Socket, 4 Virtual Cores; 2.4Ghz;
Memoria: 8GB;
HD: 100GB de HD (Custom Partition, tirei 30Gb do /home e coloquei no /, o resto default)
Network: 2 placas Gbit, eth0(wan) e eth1(lan)
Link: 20Mbit

Para confirmar de onde vem o problema fiz os testes básicos:
Acesso a internet sem servidor, com computador direto, OK.
Acesso a internet só com MASQUERADE, ok;
Acesso a internet com MASQUERADE e ACCEPT para portas 8080/443(Antes ao DROP destas portas, controle de quem tem livre acesso). ok;
Acesso a internet por meio do SQUID, porta 8085(liberado no iptables), lento;
Acesso a internet por meio do SQUID, porta 8085 e com WPAD(fiz os testes e esta buscando a configuração OK), lento;
Acesso a internet por meio do SQUID segundos após o Stop/Start ou Restart é rápido, um minuto depois já fica lento.
Acesso a servidores WEB( direto por IP) por meio do SQUID, lento;
Acesso a servidores WEB (nome da máquina) por meio do SQUID, lento;

Após todos estes testes fui modificando as minhas configurações do SQUID, de modo que testei primeiro por manter a configuração do arquivo squid.conf.default, acesso continuou lento.
Na próxima modificação no arquivo, mexi em:
Para somente a minha rede (192.168.1.0/24);
Adicionei visible_hostname;
Adicionei dns_nameservers 8.8.8.8 8.8.4.4;
Adicionei dns_v4_first.

Nada adiantou, recorri a uma teoria de que poderia estar acontecendo devido a pilha IPv6, desativei tudo que podia:
No arquivos sysctl.conf:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

No arquivo Network(/etc/sysconfig/):
NETWORKING_IPV6=no

Bom, pensei em adicionar o cache novamente, porém acredito que não irá resultar em uma melhoria, uma vez que a maioria dos sites são HTTPS e o cache para estes sites para ser cada vez menor.

Vou publicar o meu arquivo config que usava antes destes testes todos, que também estava lento:
#
# Recommended minimum configuration:
#
acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
#acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1

# Example rule allowing access from your local networks.
# Adapt to list your (internal) IP networks from where browsing
# should be allowed
#acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
#acl localnet src 172.16.0.0/12 # RFC1918 possible internal network
acl localnet src 192.168.1.0/24 # RFC1918 possible internal network
#acl localnet src fc00::/7 # RFC 4193 local private network range
#acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines

acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT

#
# Recommended minimum Access Permission configuration:
#
# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access deny manager

# Deny requests to certain unsafe ports
http_access deny !Safe_ports

# Deny CONNECT to other than secure SSL ports
http_access deny CONNECT !SSL_ports

# We strongly recommend the following be uncommented to protect innocent
# web applications running on the proxy server who think the only
# one who can access services on "localhost" is a local user
#http_access deny to_localhost

#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#

# Example rule allowing access from your local networks.
# Adapt localnet in the ACL section to list your (internal) IP networks
# from where browsing should be allowed

# Ips Liberados
acl IPsLiberados src 192.168.1.156 192.168.1.152
acl IPsSoundCloud src 192.168.1.115
acl IPsSCI src 192.168.1.99

# Dominios Bloqueados
acl negadosGeral dstdomain .baidu.com
acl netflix dstdomain .netflix.com .nflxvideo.net
acl safebrowsing dstdomain .safebrowsing.google.com .safebrowsing-cache.google.com
acl soundcloud dstdomain .soundcloud.com
acl webwhatsapp dstdomain .web.whatsapp.com
acl facebook dstdomain .facebook.com.br .facebook.com .facebook.net
acl googlevideo dstdomain .googlevideo.com
acl globovideo dstdomain .video.globo.com
acl youtube dstdomain .youtube.com .youtube.com.br

# Liberar acesso alguns PCs
http_access allow IPsLiberados
cache deny IPsSCI
always_direct allow IPsSCI

http_access deny negadosGeral
http_access deny netflix
#http_access deny safebrowsing
http_access deny soundcloud !IPsSoundCloud
http_access deny webwhatsapp
http_access deny facebook
http_access deny googlevideo
http_access deny globovideo
http_access deny youtube

http_access allow localnet
http_access allow localhost

# And finally deny all other access to this proxy
http_access deny all

# Squid normally listens to port 3128
#http_port 3128
http_port 8085

# DNS Server
dns_nameservers 8.8.8.8 8.8.4.4
dns_v4_first on

# Visible Hostname / Public
visible_hostname svProxy

strip_query_terms off

maximum_object_size 50000 KB
minimum_object_size 0 KB

cache_swap_low 90
cache_swap_high 95
logfile_rotate 5

cache_mem 2596 MB

shutdown_lifetime 3 second

# Uncomment and adjust the following to add a disk cache directory.
#cache_dir aufs /var/spool/squid 24000 16 256
cache_dir ufs /var/spool/squid 24000 16 256

# Leave coredumps in the first cache dir
coredump_dir /var/spool/squid

# Add any of your own refresh_pattern entries above these.
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320

#Arquivos ZIP e RAR | Ignorar o client refresh
refresh_pattern -i .zip$ 60 90% 1440 reload-into-ims ignore-no-cache refresh-ims
refresh_pattern -i .rar$ 60 90% 1440 reload-into-ims ignore-no-cache refresh-ims


Espero que possam me ajudar, abraço.

Edit: Fiz uma modificação no tamanho dos arquivos e no Cache.
De: #cache_dir ufs /var/spool/squid 24000 16 256
Para: cache_dir diskd /var/spool/squid 20480 64 256 Q1=64 Q2=72

E modifiquei os limites:
ulimit -n 16384

Com base neste artigo: https://www.vivaolinux.com.br/dica/Tunning-Squid-Para-alto-trafego

Outra coisa que observei é que os processos do LSOF do squid estão IPv6 ainda, porém, acredito que só esta usando IPv4, vou analisar melhor.
Notei que também depois dessas modificações do IPv6, algumas vezes o proxy não abre a página, talvez alguma incompatibilidade com algumas páginas.. ainda estou analisando.


  


2. Squid Lento

Alex Fernando
showd07

(usa Debian)

Enviado em 04/11/2016 - 17:55h

Ola,
pelo que entendi está lento ao fazer o cache.
o HD do servidor esta ok?
no tamanho maximo do objeto que o cache ira guardar, coloque um valor bem baixo e faça o teste.
entre em contato cmg se quiser
email [email protected]
skype showd.dota
whats 41 9865-7434



3. Lentidão com Squid 3.5.23 e E2guardian

francisco
fgcneto

(usa Debian)

Enviado em 13/06/2017 - 16:26h

Olá Dukmad , como conseguiu solucionar o seu problema referente a lentidão do squid ?








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts