BlueOnyx に MRTG をインストールし,SNMP でシステムのリソースを監視するようにしてみた。
まず,BlueOnyx のコンパネで snmpd を有効にする。
yum で MRTG をインストールする。
# yum -y install mrtg
メモリの MaxBytes を free コマンドで調べる。
# free
total used free shared buffers cached
Mem: 2071236 1921088 150148 0 298840 1053020
-/+ buffers/cache: 569228 1502008
Swap: 4161528 2788 4158740
設定ファイルを作成する。
# cd /etc/mrtg
# vi mrtg.cfg.utf8
WorkDir: /var/www/mrtg
Options[_]: growright,bits
EnableIPv6: no
Language: eucjp
Target[eth0]: 1:public@localhost:
SetEnv[eth0]: MRTG_INT_IP="127.0.0.1" MRTG_INT_DESCR="eth0"
MaxBytes[eth0]: 12500000
Title[eth0]: Network Traffic
PageTop[eth0]: <H1>Network Traffic</H1>
withPeak[eth0]: mw
# CPU
Target[cpu]: 1.3.6.1.4.1.2021.10.1.5.2&1.3.6.1.4.1.2021.10.1.5.3:public@localhost:
MaxBytes[cpu]: 100
Options[cpu]: growright,noinfo,nopercent
YLegend[cpu]: CPU usage(%)
ShortLegend[cpu]: (%)
LegendI[cpu]: ユーザ
LegendO[cpu]: システム
Legend1[cpu]: CPU使用率 (ユーザ) (%)
Legend2[cpu]: CPU使用率 (システム) (%)
Title[cpu]: CPU使用率
PageTop[cpu]: <H1>CPU使用率</H1>
# Memory
Target[mem]: 1.3.6.1.4.1.2021.4.6.0&1.3.6.1.4.1.2021.4.4.0:public@localhost:
MaxBytes1[mem]: 2071236
MaxBytes2[mem]: 4161528
Unscaled[mem]: dwmy
Options[mem]: gauge,absolute,growright,noinfo
YLegend[mem]: Mem Free (Bytes)
ShortLegend[mem]: Bytes
kilo[mem]: 1024
kMG[mem]: k,M,G,T,P
LegendI[mem]: Real
LegendO[mem]: Swap
Legend1[mem]: 空き物理メモリ [MBytes]
Legend2[mem]: 空きスワップメモリ [MBytes]
Title[mem]: 空きメモリ量
PageTop[mem]: <H1>空きメモリ量</H1>
# Load Average
Target[load]: 1.3.6.1.4.1.2021.10.1.5.1&.1.3.6.1.4.1.2021.10.1.5.2:public@localhost
MaxBytes[load]: 10000
Options[load]: gauge,absolute,growright,noinfo,nopercent
YLegend[load]: Load Average
YTicsFactor[load]: 0.01
Factor[load]: 0.01
ShortLegend[load]: pt.
LegendI[load]: 1分平均
LegendO[load]: 5分平均
Legend1[load]: 1分平均
Legend2[load]: 5分平均
Title[load]: Load Average
PageTop[load]: <h1>Load Average</h1>
yum で nkf をインストールする。
# yum -y install nkf
設定ファイルの文字コードを UTF-8 から EUC-JP に変換する。
# nkf -e mrtg.cfg.utf8 > mrtg.cfg
MRTG を実行するシェルスクリプトを作成する。
# vi mrtg.sh
#!/bin/bash
LOCK=/var/lock/mrtg/mrtg_l
CONFCACHE=/var/lib/mrtg/mrtg.ok
env LANG=C mrtg /etc/mrtg/mrtg.cfg --lock-file $LOCK --confcache-file $CONFCACHE
indexmaker --columns=1 /etc/mrtg/mrtg.cfg > /var/www/mrtg/index.html
# chmod 700 mrtg.sh
エラーが出なくなるまで (3回くらい) 実行する。
# ./mrtg.sh
# ./mrtg.sh
# ./mrtg.sh
cron の設定を変更する。
# vi /etc/cron.d/mrtg
#*/5 * * * * root LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok
*/5 * * * * root /etc/mrtg/mrtg.sh
表示を許可する IP アドレスを追加し,Apache をリロード。
# vi /etc/httpd/conf.d/mrtg.conf
# /etc/init.d/httpd reload
以上の手順で,
http://(サーバの FQDN)/mrtg/
でリソースを監視できるようになった。
参考ページ
- mrtg導入 – satoru.netの自由帳
- ネットワークトラフィック監視ツール導入(NET-SNMP+MRTG)
コメント