Strona 1 z 1

squid konfiguracja i obciąŻenie procesora

: 17 sierpnia 2008, 20:18
autor: mkeram
Witajcie,
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:
./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
config zminimalizowany do koniecznego minimum do czasu usunięcia problemu:

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
Squid od około tygodnia nie cache'uje zajmuje się tylko zbieraniem logów, kto gdzie i kiedy wchodził oraz przypisuje 1 IP zewnętrzne, z którego jest widocznych około 40-50 użytkowników.

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