Squid proxy, SNMP i MRTG – deo 2

Videti predhodni post, kako naterati SNMP da radi i vuče Squid MIB-ove.

MRTG (Multi Router Traffic Grapher)
# yum install net-snmp*
# yum install mrtg*
# yum install gcc*
# yum install gd*
# yum install zlib*
# yum install libpng*
Treba naći lokalno smešten Squid MIB fajl. Slova imena mogu biti velika ili mala, ali je uvek txt fajl :
# find / -name “*MIB*” -print|more
…..
/usr/share/snmp/mibs/SQUID-MIB.txt
…..
Ovaj fajl kopirati u /etc/mrtg folder, ali sa nazivom squid.mib.
Izmeniti /etc/mrtg/mrtg.cfg fajl, na kraju mu dodati :
########################################
HtmlDir: /var/www/mrtg
ImageDir: /var/www/mrtg
LogDir: /var/lib/mrtg
ThreshDir: /var/lib/mrtg
########################################
LoadMIBS: /etc/mrtg/squid.mib
########################################
Target[proxy-hit]: cacheHttpHits&cacheProtoClientHttpRequests:LOZINKA@127.0.0.1:3401
Title[proxy-hit]: HTTP Hits
PageTop[proxy-hit]:

proxy Cache Statistics: HTTP Hits / Requests

Suppress[proxy-hit]: y
LegendI[proxy-hit]: HTTP hits
LegendO[proxy-hit]: HTTP requests
Legend1[proxy-hit]: HTTP hits
Legend2[proxy-hit]: HTTP requests
YLegend[proxy-hit]: perminute
ShortLegend[proxy-hit]: req/min
Options[proxy-hit]: nopercent, perminute, dorelpercent, growright

Target[proxy-srvkbinout]: cacheServerInKb&cacheServerOutKb:LOZINKA@127.0.0.1:3401
Title[proxy-srvkbinout]: Cache Server Traffic In / Out
PageTop[proxy-srvkbinout]:

Cache Statistics: Server traffic volume (In/Out)

Suppress[proxy-srvkbinout]: y
LegendI[proxy-srvkbinout]: Traffic In
LegendO[proxy-srvkbinout]: Traffic Out
Legend1[proxy-srvkbinout]: Traffic In
Legend2[proxy-srvkbinout]: Traffic Out
YLegend[proxy-srvkbinout]: per minute
ShortLegend[proxy-srvkbinout]: b/min
kMG[proxy-srvkbinout]: k,M,G,T
kilo[proxy-srvkbinout]: 1024
Options[proxy-srvkbinout]: nopercent, perminute, growright

Target[cacheDnsSvcTime]: cacheDnsSvcTime.5&cacheDnsSvcTime.60:LOZINKA@127.0.0.1:3401
Title[cacheDnsSvcTime]: DNS Service Time
Options[cacheDnsSvcTime]: gauge, growright, nopercent
PageTop[cacheDnsSvcTime]:

DNS service time

LegendI[cacheDnsSvcTime]: Median Svc Time (5min)
LegendO[cacheDnsSvcTime]: Median Svc Time (60min)
Legend1[cacheDnsSvcTime]: Median Svc Time
Legend2[cacheDnsSvcTime]: Median Svc Time
YLegend[cacheDnsSvcTime]: svc time (ms)
ShortLegend[cacheDnsSvcTime]: ms
Target[cacheMaxResSize]: cacheMaxResSize&cacheMaxResSize:LOZINKA@127.0.0.1:3401 * 1024
#Može se desiti da ne primi množenje sa 1024, pa to samo skloniti…..
Title[cacheMaxResSize]: Max Resident Size
Options[cacheMaxResSize]: gauge, growright, nopercent
PageTop[cacheMaxResSize]:

Maximum Resident Size

LegendI[cacheMaxResSize]: Size
LegendO[cacheMaxResSize]:
Legend1[cacheMaxResSize]: Size
Legend2[cacheMaxResSize]:
YLegend[cacheMaxResSize]: Bytes
ShortLegend[cacheMaxResSize]: Bytes

Target[cacheSysPageFaults]: cacheSysPageFaults&cacheSysPageFaults:LOZINKA@127.0.0.1:3401
Title[cacheSysPageFaults]: Sys Page Faults
Options[cacheSysPageFaults]: growright, nopercent, gauge
PageTop[cacheSysPageFaults]:

Sys Page Faults

LegendI[cacheSysPageFaults]: Page Faults
LegendO[cacheSysPageFaults]:
Legend1[cacheSysPageFaults]: Page Faults
Legend2[cacheSysPageFaults]:
YLegend[cacheSysPageFaults]: page faults/sec
ShortLegend[cacheSysPageFaults]: PF/s

Target[cacheCurrentUnusedFileDescrCount]: cacheCurrentUnusedFDescrCnt&cacheCurrentUnusedFDescrCnt:LOZINKA@127.0.0.1:3401
Title[cacheCurrentUnusedFileDescrCount]: Available File Descriptors
Options[cacheCurrentUnusedFileDescrCount]: gauge, growright, nopercent
PageTop[cacheCurrentUnusedFileDescrCount]:

Available number of file descriptors

LegendI[cacheCurrentUnusedFileDescrCount]: File Descriptors
LegendO[cacheCurrentUnusedFileDescrCount]:
Legend1[cacheCurrentUnusedFileDescrCount]: File Descriptors
Legend2[cacheCurrentUnusedFileDescrCount]:
YLegend[cacheCurrentUnusedFileDescrCount]: # of FDs
ShortLegend[cacheCurrentUnusedFileDescrCount]: FDs

###################################
#Max bytes per second na portu proxy servera
MaxBytes[proxy-hit]: 125000000
MaxBytes[proxy-srvkbinout]: 12500000
MaxBytes[cacheDnsSvcTime]: 1000000000
MaxBytes[cacheMaxResSize]: 1000000000
MaxBytes[cacheSysPageFaults]: 10000000
MaxBytes[cacheCurrentUnusedFileDescrCount]: 1000000000
#######################################
Napomena 1 : LOZINKA je snmp lozinka (videti predhodni post), a ime-mog-proxy-servera je njegovo FQDN i može se staviti umesto 127.0.0.1 lo adrese.
Napomena 2 : MRTG requires that there be TWO data inputs, even if you only want to chart one.
Napomena 3 : na index strani može se desiti da grafika nema, što ne znači da ne postoji, pogledati direktno pod /var/www/mrtg folder, i videti sledeću napomenu…..
Napomena 4 : ako treba da se prikažu više od dva grafika na indeks strani, treba izmeniti /var/www/mrtg/index.htm fajl, i ubaciti potrebni sadržaj za dodatni grafik (paziti na TAČNA imena fajlova).
Napomena 5 : Ovime su pokrivene manje-više sve stavke koje bi trebalo da se prate po pitanju Squid servera. Za detaljnija objašnjenja i granice pojedinih stavki, videti predhodne postove, i ovaj link.

Testiranje
# env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg
Kada se ova komanda pušta prvi put posle izmene mrtg.cfg fajla, može javiti greške. Treba je pustiti tri puta uzastopce, i onda ne bi trebalo da daje bilo kakve greške na izlazu.

Pravljenje izveštaja
Posle podešavanja mrtg.cfg fajla, pustiti da se napravi izveštaj (pravi /var/www/mrtg/index.html stranu) :
# indexmaker –output=/var/www/mrtg/index.html /etc/mrtg/mrtg.cfg
Napomena : ispred “output” su DVA znaka minus!!
Ovo treba da daje izlaz bez greške.
Ne koristiti cron da bi se ovo izvršavalo svakih 5min. To se dešava samo bez cron job-a. Ako ga još i u cron stavite, grafik će melo-malo da nestane…..

Grafiku se prilazi na adresi : http://10.10.10.95/mrtg/index.html

Napomena : ako se grafika ne prokazuje (dobija se da nemate prava pristupa datoj stranici), proveriti fajl /etc/httpd/conf.d/mrtg.conf kojim se određuje koje IP adrese imaju pravo prostupa MRTG graficima.

Gde se šta nalazi (od fajlova)
Konfigureacija : /etc/mrtg/mrtg.cfg i /etc/httpd/conf.d/mrtg.conf
Logovi : /var/lib/mrtg/*.log, *.old
Prikaz : default je u /var/www/mrtg

Odličan link ka raznim MIB-ovima za Squid.