ロックオン開発チームブログ -Lockon Knowledge Repositories-

CategoryMRTG

MRTGによるCPU使用率監視

MRTGでCPU使用率を監視する際、100%を基準としたCPU使用率を示すMIBが見つからなかったためシェルスクリプトで一部を補い設定しました。
▼MRTGの設定はこうなります。
#===========# 
# CPU USAGE # 
#===========# 
 
Target[cpu_usage]: `/home/mrtg/cpu.sh xxxxxxxx xxx.xxx.xxx.xxx` 
MaxBytes[cpu_usage]: 100 
ThreshMaxI[cpu_usage]: 90 
Unscaled[cpu_usage]: dwmy 
Options[cpu_usage]: gauge,absolute,nopercent,noinfo 
YLegend[cpu_usage]: CPU Usage(%) 
ShortLegend[cpu_usage]: (%) 
LegendI[cpu_usage]: CPU Usage1 
LegendO[cpu_usage]: CPU Usage2 
Legend1[cpu_usage]: CPU Usage1(%) 
Legend2[cpu_usage]: CPU Usage2(%) 
Title[cpu_usage]: CPU Usage 

▼使用したシェルスクリプト(cpu.sh)
#!/bin/sh

PASS=$1
IP=$2

SYS=`/usr/local/bin/snmpwalk -v 1 -c $PASS $IP .1.3.6.1.2.1.1.1 | awk -F" " '{print $5}'`
USER=`/usr/local/bin/snmpwalk -v 1 -c $PASS $IP .1.3.6.1.4.1.2021.11.9 | awk -F" " '{print $4}'`
SYSTEM=`/usr/local/bin/snmpwalk -v 1 -c $PASS $IP .1.3.6.1.4.1.2021.11.10 | awk -F" " '{print $4}'`
IDLE=`/usr/local/bin/snmpwalk -v 1 -c $PASS $IP .1.3.6.1.4.1.2021.11.11 | awk -F" " '{print $4}'`

USAGE1=`expr $USER + $SYSTEM`
USAGE2=`expr 100 - $IDLE`

HOST=$SYS

echo $USAGE1
echo $USAGE2
echo ""
echo $HOST

うまく動作すると以下のようにグラフ化されます。 cpu_usage-day.png
Copyright(c) LOCKON CO.,LTD. All Rights Reserved.