Od kilku tygodni męczę się z konfiguracją squida. Generalnie wszystko działa poprawnie. Problemem jest jednak bardzo duże obciążenie systemu przez squida.
Od kliku tygodni administruję serwerem (PIV 1,8 1GB ram), na którym stoi squid dla około 200 osób (w szczycie max 100 osób korzystających z internetu). Jak przejąłem kontrolę nad serwerem zainstalowany był squid 2.4stable6. Następnie na próbę przeinstalowałem na wersję 2.5, następnie 2.6, a teraz jest 2.7stable4 i cały czas jest dokładnie to samo czyli w szczycie gdy wykorzystanie łącza sięga 8-9Mbit/s obciążenie procesora przez squida dochodzi do 80-85%. Nie jest to stała wartość i waha się od 50-70 w szczycie do 85% według polecenia top. Użytkownicy nie skarżą się na opóźnienia wszystko działa tylko martwi mnie to obciążenie, jak przybędzie ludzi będzie nieciekawie. Po wyłączeniu przekierowania na squida lub zastopowanie squida powoduje automatyczne zwolnienie zasobów procesora.
Moja konfiguracja squid2.7stable4:
config zminimalizowany do koniecznego minimum do czasu usunięcia problemu:./configure --enable-storeio="diskd,ufs,null" --enable-linux-netfilter --enable-underscores --enable-removal-policies="heap,lru" --enable-http-violations --with-openssl --with-dl --with-pthreads --enable-large-files --enable-err-language=Polish --enable-default-err-language=Polish --enable-delay-pools --enable-pool --with-pthreads --enable-truncate --disable-ident-lookups --disable-internal-dns --disable-carp --disable-icmp --disable-wccp --disable-htcp --disable-snmp --enable-kill-parent-hack --enable-time-hack --enable-gnuregex --enable-forw-via-db --enable-follow-x-forwarded-for --sysconfdir=/etc
Kod: Zaznacz cały
http_port 192.168.0.100:8080 transparent
cache_effective_user proxy
cache_effective_group proxy
#Siec podzielona na 5 adresów IP (DSL 15mb z TP)
acl IP194 src 192.168.1.0/255.255.255.0
acl IP195 src 192.168.0.0/255.255.255.192
acl IP196 src 192.168.0.64/255.255.255.192
acl IP197 src 192.168.0.128/255.255.255.192
acl IP198 src 192.168.0.192/255.255.255.192
acl IP195 src 192.168.2.0/255.255.255.192
acl IP196 src 192.168.2.64/255.255.255.192
acl IP197 src 192.168.2.128/255.255.255.192
acl IP198 src 192.168.2.192/255.255.255.192
http_access allow IP194
http_access allow IP195
http_access allow IP196
http_access allow IP197
http_access allow IP198
tcp_outgoing_address 83.x.x.194 IP194
udp_outgoing_address 83.x.x.194 IP194
tcp_outgoing_address 83.x.x.195 IP195
udp_outgoing_address 83.x.x.195 IP195
tcp_outgoing_address 83.x.x.196 IP196
udp_outgoing_address 83.x.x.196 IP196
tcp_outgoing_address 83.x.x.197 IP197
udp_outgoing_address 83.x.x.197 IP197
tcp_outgoing_address 83.x.x.198 IP198
udp_outgoing_address 83.x.x.198 IP198
#maksymalna ilosc trzymanych logow
logfile_rotate 14
error_directory /usr/local/squid/share/errors/Polish
half_closed_clients off
acl safe_ports port 80
acl safe_ports port 443
http_access deny !safe_ports
acl all src 0.0.0.0/0
#aktualnie bez cache'owania tylko zbieranie logów i wykorzystanie 5 IP
cache deny all
http_access deny all
cache_mem 120 MB
maximum_object_size 300 kB
visible_hostname squid
dns_nameservers 127.0.0.1
#ilosc miejsca na cache, 1 gb
cache_dir ufs /squid/squid-cache 4000 16 256
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_store_log none
emulate_httpd_log on
# wylaczenie logowania pakietow icp z innych serwerow
log_icp_queries off
Ram jest praktycznie nie wykorzystywany, dysk też się nudzi w cache.log nie ma nic oprócz tego że wystartował poprawnie i czasem ktoś chce przez squid ciągnąć torrenty (sporadycznie 3-4 wpisy na dzień).
Coś musiałem przeoczyć bo to chyba niemożliwe aby 100 osób generowało taki ruch, że squid zżera mi ponad 70% procesora. Gdyby nie squid komputer by się strasznie nudził mimo, że jest tam apache, jakaś poczta, pppoe, ipp2p, l7, mysql itp.
Proszę o pomoc bo naprawdę nie wiem co dalej robić.
Pozdrawiam
Marek