MRTGによるCPU使用率監視
MRTGでCPU使用率を監視する際、100%を基準としたCPU使用率を示すMIBが見つからなかったためシェルスクリプトで一部を補い設定しました。
▼MRTGの設定はこうなります。
▼使用したシェルスクリプト(cpu.sh)
うまく動作すると以下のようにグラフ化されます。
▼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
うまく動作すると以下のようにグラフ化されます。

