如何使用 Cacti 为连接到 router/switch 的设备创建 (upload/download) 图表?
How to create (upload/download) graph for devices connected to router/switch using Cacti?
我正在尝试为连接到光线路终端 (OLT) 的 ONU(客户端)设备创建图表。可以创建 OLT(上游)的图表,但我坚持为连接到 OLT 的每个设备创建图表。
成功了:DataInputMethod 应该是 script/command。获取 OLT snmp 数据并将其输出到文件的脚本 [我 运行 此脚本每 2 分钟使用一次 cron ] 数据保存到 /tmp 目录中的相应 OLT 文件。
后面我用另一个脚本提取ONU(连接到每个OLT的客户端设备提取下载和上传数据)
# get_olt_snmp.sh
#!/bin/bash
echo ` date`
# PTS-OLT1.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area1-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area1-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area1-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area1-olt1.example.com_upload_data
#CBL-OLT1.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area2-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area2-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area2-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area2-olt1.example.com_upload_data
#area3-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area3-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area3-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area3-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area3-olt1.example.com_upload_data
#area4-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area4-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area4-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area4-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area4-olt1.example.com_upload_data
#area5-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area5-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area5-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area5-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area5-olt1.example.com_upload_data
#area6-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area6-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area6-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area6-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area6-olt1.example.com_upload_data
#area7-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area7-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area7-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area7-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area7-olt1.example.com_upload_data
#area8-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area8-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area8-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area8-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area8-olt1.example.com_upload_data
#area9-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area9-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area9-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area9-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area9-olt1.example.com_upload_data
#area10-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area10-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area10-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area10-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area10-olt1.example.com_upload_data
#area11-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area11-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area11-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area11-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area11-olt1.example.com_upload_data
#area12-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area12-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area12-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area12-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area12-olt1.example.com_upload_data
#area13-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area13-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area13-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area13-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area13-olt1.example.com_upload_data
读取 onu 脚本为每个客户端创建图形device.Add cacti datainputtype 字段中的此脚本
# read_onu_snmp.sh
#!/bin/sh
#
# Find a user's in/out traffic by username.
# Syntax:
# olt_snmp <olt> <ontid>
OLT=
ONTID=
UPLOAD=`/bin/grep ${ONTID} /tmp/${OLT}_upload_data | cut -d':' -f4 | sed 's/ *//g'`
DOWNLOAD=`/bin/grep ${ONTID} /tmp/${OLT}_download_data | cut -d':' -f4 | sed 's/ *//g'`
echo "in_traffic:${UPLOAD} out_traffic:${DOWNLOAD}"
我正在尝试为连接到光线路终端 (OLT) 的 ONU(客户端)设备创建图表。可以创建 OLT(上游)的图表,但我坚持为连接到 OLT 的每个设备创建图表。
成功了:DataInputMethod 应该是 script/command。获取 OLT snmp 数据并将其输出到文件的脚本 [我 运行 此脚本每 2 分钟使用一次 cron ] 数据保存到 /tmp 目录中的相应 OLT 文件。
后面我用另一个脚本提取ONU(连接到每个OLT的客户端设备提取下载和上传数据)
# get_olt_snmp.sh
#!/bin/bash
echo ` date`
# PTS-OLT1.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area1-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area1-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area1-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area1-olt1.example.com_upload_data
#CBL-OLT1.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area2-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area2-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area2-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area2-olt1.example.com_upload_data
#area3-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area3-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area3-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area3-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area3-olt1.example.com_upload_data
#area4-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area4-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area4-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area4-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area4-olt1.example.com_upload_data
#area5-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area5-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area5-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area5-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area5-olt1.example.com_upload_data
#area6-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area6-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area6-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area6-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area6-olt1.example.com_upload_data
#area7-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area7-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area7-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area7-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area7-olt1.example.com_upload_data
#area8-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area8-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area8-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area8-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area8-olt1.example.com_upload_data
#area9-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area9-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area9-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area9-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area9-olt1.example.com_upload_data
#area10-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area10-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area10-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area10-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area10-olt1.example.com_upload_data
#area11-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area11-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area11-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area11-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area11-olt1.example.com_upload_data
#area12-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area12-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area12-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area12-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area12-olt1.example.com_upload_data
#area13-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area13-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area13-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area13-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area13-olt1.example.com_upload_data
读取 onu 脚本为每个客户端创建图形device.Add cacti datainputtype 字段中的此脚本
# read_onu_snmp.sh
#!/bin/sh
#
# Find a user's in/out traffic by username.
# Syntax:
# olt_snmp <olt> <ontid>
OLT=
ONTID=
UPLOAD=`/bin/grep ${ONTID} /tmp/${OLT}_upload_data | cut -d':' -f4 | sed 's/ *//g'`
DOWNLOAD=`/bin/grep ${ONTID} /tmp/${OLT}_download_data | cut -d':' -f4 | sed 's/ *//g'`
echo "in_traffic:${UPLOAD} out_traffic:${DOWNLOAD}"