Ako se rad proxy squid 3.1.10 servera naglo uspori
Dakle ako se korisnici žale na spori rad servera, evo šta treba proveriti :
1. Veličina logova u /var/log/squid
Ako su iole blizu 2G treba ih rotirati :
# service squid stop
# squid -k rotate
Paziti, može se desiti da se posle naredbe mora par minuta sačekati realizacija
# service squid start
Ako neće da se rotiraju (dešava se), uraditi to peške, kopiranjem i anuliranjem logova.
Ako su često tu oko limita, treba ih rotirati češće kroz fajl /etc/logrotate.d/squid :
/var/log/squid/*.log {
daily
rotate 30
compress
notifempty
missingok
sharedscripts
postrotate
# Asks squid to reopen its logs. (log_rotate 0 is set in squid.conf)
# errors redirected to make it silent if squid is not running
/usr/sbin/squid -k rotate 2>/dev/null
# Wait a little to allow Squid to catch up before the logs is compressed
sleep 1
endscript
}
2. Ako koristite SquidGuard, on ne obrće sam logove, dakle i veličina logova na lokaciji /usr/local/squidGuard/logs
3. Proveriti izlaz /var/log/squid/cache.log fajla
3a. Ako se tu nađe sledeći zapis :
2013/11/01 10:03:26| client_side.cc(2996) okToAccept: WARNING! Your cache is running out of filedescriptor
Pogledati sa koliko file descriptor-a je squid postavljen :
# squid -v
Squid Cache: Version 3.1.10
configure options: ‘–build=x86_64-redhat-linux-gnu’
…..
‘–with-filedescriptors=16384’
…..
Kako videti koliko je deskriptora u upotrebi (paziti, ovo često NE funkcioniše) :
# squidclient -h vaša-IP-adresa -p vaš-port mrtg:info| grep redirect
Nedostatak deskriptora se leči na sledeći način. U fajl /etc/squid/squid.conf dodati liniju :
max_filedesc 4096 (na samom početku fajla, kod opštih opcija)
I restartovati squid, i pratiti /var/log/squid/cache.log, u kome će se javiti linija :
…..
2013/11/01 10:09:18| With 4096 file descriptors available
…..
3b. Ako se u cache.log nađe ovakav zapis :
2013/11/01 10:32:03| Consider increasing the number of redirector processes in your config file.
U /etc/squid/squid.conf povećati broj kod stavke redirect_children (uobičajeno je 5, ali ako je veći saobraćaj, bolje je staviti 10).
Odličan link po pitanju squid-a.
4. Ako squid prestane da radi, i u /var/log/squid/cache.log javlja sledeću poruku :
2013/11/12 09:35:42| /var/spool/squid/swap.state.new: (28) No space left on device
FATAL: storeDirOpenTmpSwapLog: Failed to open swap log.
Squid Cache (Version 3.1.10): Terminated abnormally.
CPU Usage: 0.017 seconds = 0.012 user + 0.005 sys
Maximum Resident Size: 37536 KB
Page faults with physical i/o: 0
Proveriti stanje pod iskovima, i za fizički prostor, i za i-nodove, za lokaciju cache direktorijuma (kod mene je to /var/spool/squid) :
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_proxy2013-lv_root
80G 37G 40G 48% /
…..
# df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/vg_proxy2013-lv_root
5324800 5324800 0 100% /
…..
Evo kako se mogu izbrojati inodovi u pojedinačnim folderima, da bi se videlo gde je problem :
# for i in /*; do echo $i; find $i | wc -l; done
I preciznije :
# for i in /var/www/*; do echo $i; find $i | wc -l; done
/var/www/cgi-bin
1
/var/www/error
25
…..
/var/www/mysar
182
/var/www/sarg
4993518
/var/www/usage
13
Paziti sarg JEDE inodove!!!!
Obrisati fajlove (neke) i staviti manji period pamćenja fajlova za sarg, što se radi u njegovom konfiguracionom fajlu /etc/sarg/sarg.conf, i to je opcija :
lastlog xy
Gde je xy broj dana Sarg logova koje hoćete da zadržite.