编写SHELL脚本在CACTI中来实现监控深信服上网行为管理的CPU和内存使用情况

一、深信服上网行为管理中的SNMP设置
ac1

二、在CACTI中编写SHELL脚本如下:

cpu oid: .1.3.6.1.4.1.35047.1.3
内存 oid: .1.3.6.1.4.1.35047.1.4
在线用户数oid: .1.3.6.1.4.1.35047.2.1.1.1.0
会话数oid: .1.3.6.1.4.1.35047.2.1.1.6.0

先编写监控CPU的脚本

vim ac.sh
#! /bin/bash 
#
a=`snmpwalk -v 2c -c sangfor 192.168.110.250 .1.3.6.1.4.1.35047.1.3`
b=`echo $a |awk -F"INTEGER: " '{print $2}'`

echo -n "accpu:$b"

三、把此脚本拷贝到CACTI的scripts目录下,并给可执行权限

cp ac.sh /usr/share/cacti/scripts/
chmod +x  /usr/share/cacti/scripts/ac.sh

看下此脚本的执行结果:
ac2-2
请注意此红柜内的字符串,此为最后出图的关键地方,此字符串值 应与Date input Mthods中的Output Fields中的Name的值一样,要不然采集不到数据
ac3-3
四、建立Data Input Methods

ac4-4
/bin/bash /scripts/ac.sh 这个是执行脚本获取CPU使用率,其中是获取cacti所在路径的
五、建立Date Templates
ac5-5
六、建立Date Sourecs
ac6-6
七、建立Graph Templates
ac7-1
ac7-22
ac7-33
同理添加最大值,最小值,平均值
八、最后在Graph Management中选中设备关连Graph
magagraph1
graph1
graph2-2
graph3-3

graph4-4

九、测试

使用snmpwalk测试能得到数据

[root@renfu cacti]# snmpwalk -v 2c -c sangfor 192.168.110.250 .1.3.6.1.4.1.35047.1.3
SNMPv2-SMI::enterprises.35047.1.3.0 = INTEGER: 9
You have new mail in /var/spool/mail/root
[root@renfu cacti]# snmpwalk -v 2c -c sangfor 192.168.110.250 .1.3.6.1.4.1.35047.1.3
SNMPv2-SMI::enterprises.35047.1.3.0 = INTEGER: 3
[root@renfu cacti]# snmpwalk -v 2c -c sangfor 192.168.110.250 .1.3.6.1.4.1.35047.1.3
SNMPv2-SMI::enterprises.35047.1.3.0 = INTEGER: 7

用RRDTOOL工具获取数据

[root@renfu cacti]# rrdtool fetch -r 300 /usr/share/cacti/rra/ac_5min_cpu_193.rrd AVERAGE

1452349500: 1.4900000000e+00
1452349800: 2.3333333333e-02
1452350100: 9.7666666667e-01
1452350400: 4.9066666667e+00
1452350700: 5.0000000000e+00
1452351000: 1.3333333333e-01
1452351300: 0.0000000000e+00
1452351600: 0.0000000000e+00
1452351900: 0.0000000000e+00
1452352200: 0.0000000000e+00
1452352500: 1.5573333333e+01
1452352800: 1.8666666667e-01
1452353100: 1.8666666667e-01
1452353400: 1.5078333333e+01
1452353700: 1.5078333333e+01
1452354000: 8.0433333333e+00
1452354300: 0.0000000000e+00
1452354600: 5.8600000000e+00
1452354900: 1.6000000000e-01
1452355200: 5.8600000000e+00
1452355500: 2.0933333333e+00
1452355800: 1.4696666667e+01
1452356100: 5.2333333333e+00
1452356400: 1.0800000000e+00
1452356700: 2.3333333333e-02
1452357000: 2.9300000000e+00
1452357300: 5.9300000000e+00

十、最终出图效果
ac10

同理按照上面的方法,可以监控内存、在线用户数、会话数,监控图型如下:

ac-cpumemo
ac-userssession

此条目发表在linux分类目录,贴了标签。将固定链接加入收藏夹。