ienki 发表于 2019-1-12 06:50:48

定制cacti图像

cacti可以执行定制的snmp查询并为其画图。
首先,在snmpd.conf里加上这样一句
exec .1.3.6.1.4.1.2021.50 shelltest /bin/sh /tmp/shtest
修改/tmp/shtest
cat /tmp/shtest
#!/bin/sh
echo `13`
exit 63
重启,我们可以执行snmpwalk查看
snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.50
UCD-SNMP-MIB::ucdavis.50.1.1 = INTEGER: 1
UCD-SNMP-MIB::ucdavis.50.2.1 = STRING: "shelltest"
UCD-SNMP-MIB::ucdavis.50.3.1 = STRING: "/bin/sh /tmp/shtest"
UCD-SNMP-MIB::ucdavis.50.100.1 = INTEGER: 63
UCD-SNMP-MIB::ucdavis.50.101.1 = STRING: "13"
UCD-SNMP-MIB::ucdavis.50.102.1 = INTEGER: 0
UCD-SNMP-MIB::ucdavis.50.103.1 = ""
这两句:
UCD-SNMP-MIB::ucdavis.50.100.1 = INTEGER: 63
UCD-SNMP-MIB::ucdavis.50.101.1 = STRING: "13"
就是我们要用的数据了。
snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.50.100.1
UCD-SNMP-MIB::ucdavis.50.100.1 = INTEGER: 63

snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.50.101.1
UCD-SNMP-MIB::ucdavis.50.101.1 = STRING: "13"
(无论是INTEGER还是STRING,在cacti中都是可以画出来的)

之后是cacti的设置:
先创建Data Templates
名字随便起,注意在Data Input Method中选上get snmp data,保存。再编辑这个模板。在下面的oid里写上刚刚后的的oid:.1.3.6.1.4.1.2021.50.100.1
再创建一个Data Templates ,oid为:.1.3.6.1.4.1.2021.50.101.1

然后创建一个Graph Template 。
名字也是随便起,保存。再编辑。添加Graph Item 。在Data Source 中选上刚才创建的Data Templates 。选上你想要的Color,Graph Item Type(个人偏爱line3),Consolidation Function。
由于刚刚创建了两个Data Templates ,而我也把想两条曲线画在一张图里。所以我在这个Graph Template中就要加上两个Graph Item 。保存。

最后,编辑你的device。Associated Graph Templates--Add Graph Template:选上刚刚创建的Graph Template。

http://chcearth.blog.运维网.com/attachment/201103/161420496.jpg



页: [1]
查看完整版本: 定制cacti图像