Sunday, March 22, 2009

install config mrtg + snmp

install config mrtg + snmp

mrtg (multi router traffic grapher) adalah tools untuk mengetahui statistic jaringan maupun resource/hardware anda. mrtg hanya menampilkan saja, dia mengambil data dari tool lain seperti snmp atau iptables dll. untuk menginstallnya.
#apt-get install mrtg

dia akan membuat suatu file mrtg.cfg di /etc. agar lebih teratur kita pindah saja ke /etc/mrtg/mrtg.cfg. file ini (mrtg.cfg) yang nantinya akan dicompile oleh /usr/bin/mrtg menjadi halaman html, gambar png dan file log yang nantinya akan ditampilkan. mrtg,cfg ini didapatkan dari snmpd yang sudah kita jalankan dg cara men-generate menggunakan cfgmaker:
#cfgmaker b201@localhost > /etc/mrtg/mrtg.cfg

untuk mengubahnya menjadi halaman html serta gambar png, kita gunakan:
#mrtg /etc/mrtg/mrtg.cfg

untuk mendapatkan informasi yang selalu update, maka kita harus mengeksekusi syntax tersebut tiap range waktu (misal tiap 5 menit sekali). unutk itu kita letakkan di cron. buatlah file /etc/cron.d/mrtg yang berisi:
*/5 * * * * root if [ -x /usr/bin/mrtg ] && [ -r /etc/mrtg/mrtg.cfg ]; then env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg >> /var/log/mrtg/mrtg.log 2>&1; fi

selanjutnya kita buat index.html dr halaman2 html tadi dengan cara:
#indexmaker /etc/mrtg/mrtg.cfg > /var/www/mrtg/index.html

seharusnya anda bisa melihatnya di http://ipaddress/mrtg. yaitu aktifitas dari masing2 network interface yang ada. selanjutnya anda juga bisa menampilkan statistic hardware seperti cpu usage, memory usage, disk usage dll. berikut ini saya mencoba menampilkan cpu usage dan memori usage berdasarkan tutoril ini.

1. buatlah file /etc/mrtg/cpu.cfg yang berisi
WorkDir: /var/www/mrtg
 LoadMIBs: /usr/share/snmp/mibs/UCD-SNMP-MIB.txt
 Target[localhost.cpu]:ssCpuRawUser.0&ssCpuRawUser.0:public@127.0.0.1+ ssCpuRawSystem.0&ssCpuRawSystem.0:public@127.0.0.1+ ssCpuRawNice.0&ssCpuRawNice.0:public@127.0.0.1
 RouterUptime[localhost.cpu]: public@127.0.0.1
 MaxBytes[localhost.cpu]: 100
 Title[localhost.cpu]: CPU Load
 PageTop[localhost.cpu]: Active CPU Load %
 Unscaled[localhost.cpu]: ymwd
 ShortLegend[localhost.cpu]: %
 YLegend[localhost.cpu]: CPU Utilization
 Legend1[localhost.cpu]: Active CPU in % (Load)
 Legend2[localhost.cpu]:
 Legend3[localhost.cpu]:
 Legend4[localhost.cpu]:
 LegendI[localhost.cpu]: Active
 LegendO[localhost.cpu]:
 Options[localhost.cpu]: growright,nopercent


2. buat juga file /etc/mrtg/mem.cfg yang berisi
LoadMIBs: /usr/share/snmp/mibs/HOST-RESOURCES-MIB.txt
 Target[localhost.mem]: .1.3.6.1.4.1.2021.4.6.0&.1.3.6.1.4.1.2021.4.6.0:public@localhost PageTop[localhost.mem]:Free Memory
 WorkDir: /var/www/mrtg
 Options[localhost.mem]: nopercent,growright,gauge,noinfo
 Title[localhost.mem]: Free Memory
 MaxBytes[localhost.mem]: 1000000
 kMG[localhost.mem]: k,M,G,T,P,X
 YLegend[localhost.mem]: bytes
 ShortLegend[localhost.mem]: bytes
 LegendI[localhost.mem]: Free Memory:
 LegendO[localhost.mem]:
 Legend1[localhost.mem]: Free memory, not including swap, in bytes


3. buatlah script untuk masing2 *.cfg tadi agar di compile/di ubah menjadi file html, gambar png, dan log di /var/www/mrtg (atau di directory lain sesuai yang ada di file). buatlah di sembarang directory misalnya di /etc/cron.mrtg. file tersebut adalah:

/etc/cron.mrtg/cpu yang berisi
#!/bin/sh
env LANG=C /usr/bin/mrtg /etc/mrtg/cpu.cfg

/etc/cron.mrtg/mem yang berisi
#!/bin/sh
 env LANG=C /usr/bin/mrtg /etc/mrtg/mem.cfg

ubahlah menjadi executable:
# chmod ugo+x -R /etc/cron.mrtg


4. agar selalu update maka harus di cron juga seperti diatas. tambahkan saja di /etc/cron.d/mrtg menjadi:
*/5 * * * * root if [ -x /usr/bin/mrtg ] && [ -r /etc/mrtg/mrtg.cfg ]; then env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg >> /var/log/mrtg/mrtg.log 2>&1; fi
*/5 * * * * root /bin/run-parts /etc/cron.mrtg 1> /dev/null


5. selanjutnya kita tambahkan halaman html cpu dan mem tadi ke index.html semula. tetapi pada tutorial tadi saya mengalami kegagalan menambahkannya. sehingga saya menambahkannya secara manual dg cara mengedit file index.html tersebut.