Thursday, December 2, 2010

MRTG CONFIGURATION IN LINUX

Make sure snmp server is working. Without proper working snmp server, mrtg will not work. Therefore, first step is make sure snmp up and running. Following steps will take you gradually to configure it.

Setp 1:Make sure snmp server installed

# rpm -qa | grep snmp
# yum install net-snmp-utils net-snmp
# up2date -v -i net-snmp-utils net-snmp

Step # 2 : Determine if snmp server is running or not

# ps -aux | grep snmp
# lsof -i :199
# netstat -natv | grep ':199'
If you found service is running or listing on port 199 then please see step #3; otherwise start service using following command:
# service snmpd start
# chkconfig --add snmpd

Step # 3 : Make sure snmp server configured properly

# snmpwalk -v 1 -c public localhost IP-MIB::ipAdEntIfIndex

ip.ipAddrTable.ipAddrEntry.ipAdEntIfIndex.127.0.0.1 = 1
ip.ipAddrTable.ipAddrEntry.ipAdEntIfIndex.192.168.0.3 = 2

If you can see your IP address then please proceed to step 4; else it is a time to configure snmp server as follows

Configure SNMP:

(1) Edit file /etc/snmp/snmpd.conf using text editor:

# vi /etc/snmp/snmpd.conf

Change/Modify line(s) as follows:

Find following Line:
com2sec notConfigUser default public

Replace with (make sure you replace 192.168.0.0/24 replace with your network IPs) following lines:
com2sec local localhost public
com2sec mynetwork 192.168.0.0/24 public

Find Lines:
group notConfigGroup v1 notConfigUser
group notConfigGroup v2c notConfigUser

Replace with:
group MyRWGroup v1 local
group MyRWGroup v2c local
group MyRWGroup usm local
group MyROGroup v1 mynetwork
group MyROGroup v2c mynetwork
group MyROGroup usm mynetwork

Find line:
view systemview included system

Replace with:
view all included .1 80

Find line:
access notConfigGroup "" any noauth exact systemview none none

Replace with:
access MyROGroup "" any noauth exact all none none
access MyRWGroup "" any noauth exact all all none

Find lines:
syslocation Unknown (edit /etc/snmp/snmpd.conf)
syscontact Root (configure /etc/snmp/snmp.local.conf)

Replace with (make sure you supply appropriate values):
syslocation Linux (RH3_UP2), Home Linux Router.
syscontact root root@localhost

Start your snmp server and test it:

(a) Make sure when linux comes up snmpd always starts:

# chkconfig snmpd on

(b) Make sure service start whenever Linux comes up (after reboot):

# service snmpd start

(c) Finally test your snmp server:

# snmpwalk -v 1 -c public localhost IP-MIB::ipAdEntIfIndex

Step # 4 : Install mrtg if not installed

#rpm -qa | grep mrtg
# yum install mrtg

Step # 5 : Commands to Configure mrtg

(a) Create document root to store mrtg graphs/html pages:

# mkdir -p /var/www/html/mymrtg/

(b) Run any one of the following cfgmaker command to create mrtg configuration file:

#cfgmaker --global 'WorkDir: /var/www/html/mymrtg' --output /etc/mrtg/mymrtg.cfg public@localhost

(c) Create default index page for your MRTG configuration:

# indexmaker --output=/var/www/html/mymrtg/index.html /etc/mrtg/mymrtg.cfg

(d) Copy all tiny png files to your mrtg path:

# cp -av /var/www/html/mrtg/*.png /var/www/html/mymrtg/

Step # 6 First test run of mrtg

(a) Run mrtg command from command line with your configuration file:

# mrtg /etc/mrtg/mymrtg.cfg

Step # 7 Create crontab entry so that mrtg graph / images get generated every 5 minutes

(a) Login as a root user or login as a mrtg user and type following command:

# crontab -e

(b) Add mrtg cron job entry to configuration file (append following line to it):

*/5 * * * * /usr/bin/mrtg /etc/mrtg/mymrtg.cfg --logging /var/log/mrtg.log

No comments:

Post a Comment