備忘録のため,内容の正当性については責任を持ちません。

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/

でリソースを監視できるようになった。


参考ページ

コメント

コメントする




CAPTCHA