Custom Search

JITAKU_SVR_Wiki

前提

仕様
snmpで何かの値を取得したい場合の関係値として、snmpの仕様は「マネージャー」と「エージェント」の関係になっている。
具体的には「マネージャ」と呼ぶ親がいて、エージェントと呼ばれる子がいる。
子であるエージェントは親であるマネージャからの要求がある限り待機し続け、親から呼ばれることで数値を返す。

通信ポート
snmpを使用する場合、エージェント側はUDP161番ポートを開放する必要がある。

MRTGの雛形を作成するコマンド~

親側の設定
このコマンドを打つことでtrafficを取得する雛形を作成出来る。

# /usr/bin/cfgmaker --output=/etc/mrtg/web01.cfg root@web01

TIPS:
スクリプト等を使用し、数値を取得するのであればhostsに書いた方が楽。
上記の場合、cfgmakerコマンドでweb01.cfgと言う名前のついた設定ファイルを作成する。web01.cfgの対象ホストはap11。



取得したい数値をグラフ化する

(1)cfgmakerコマンドで作成された設定ファイルを編集する。

# vi /etc/mrtg/web01.cfg

====省略====
#  for UNIX
# WorkDir: /home/http/mrtg
============
     ↓
====省略====
#  for UNIX
WorkDir: /srv/www/mrtg/web01 #パスは環境に合わせて(DocumentRoot配下など)
============

====省略====
#  to get bits instead of bytes and graphs growing to the right
#Options[_]: growright, bits
============
     ↓
====省略====
#  to get bits instead of bytes and graphs growing to the right
Options[_]: growright, bits
============

TIPS:
WorkDirの行の先頭にスペースが入っているとエラーとなるのでコメントアウトを外し、さらにスペースも削除すること。
Optionについては以下参照
http://www.itbook.info/study/p84.html

(2)WorkDirを作成する。
(1)で編集したWorkDirのパスに合ったディレクトリを作成する。

# mkdir /srv/www/mrtg/web01

# mkdir /srv/www/mrtg/web01/threshdir

TIPS:
http://www.atmarkit.co.jp/flinux/rensai/root08/root08b.html
threshdirについては上記参照
ここのディレクトリに閾値を越えた場合等に一時的に数値が格納されアラートとして発動させる。

取得したい数値をグラフ化する(その他のリソース)

cfgmakerで作成されたデフォルトの監視対象はトラフィックのみなので、その他のリソースを取得する場合の設定例
長いので別リンク

  • MRTGリソースグラフ化、監視?

confが出来上がったら(または追加後)以下のコマンドで設定を反映させる。

# env LANG=C /usr/bin/mrtg /etc/mrtg/web01.cfg
Rateup WARNING: /usr/bin/rateup could not read the primary log file for vmware-hostd
Rateup WARNING: /usr/bin/rateup The backup log file for vmware-hostd was invalid as well
※WARNINGが出なくなるまでコマンドを実行する。(3回程度)
errorが出た場合は違う理由なので何度叩いてもerrorのままなので最初から見直す。

グラフ化されたものをhtml化する

上記がすべて終わった時点で、indexmakerコマンドでhtml化し、ブラウザで確認する。

# indexmaker /etc/mrtg/web01.cfg > /srv/www/mrtg/web01/index.html

グラフを自動で更新させていく

ここまでのグラフ作成では、mrtgコマンドで叩いた時に主と期した値をグラフ化しただけなので、定期的にmrtgコマンドを叩いて、
値を取得しつづけなくてはいけない。
cronで5分ごとにmrtgコマンドを実行させることが理想。

# crontab -e
/usr/bin/mrtg /etc/mrtg/web01.cfg > /dev/null 2>&1

もし、対象が多いようであればスクリプトを作成し、回すのもOK。

TIPS:
snmpのバージョンや、エージェント側のsnmpd.confの書き方次第で取得できる値が大きく変わってくるので、おかしいと思ったものは見直すべき。
例えば、
MRTG_グラフ化ソース

この設定ファイルを使用しているのであれば、VirtualMachineの数が現在稼働しているVirtualMachineと同じになっているかはすぐに確認できる。
取得できていないのであれば、エージェントとマネージャのどちらかに間違いがあるはずなので調べてみる。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-12-22 (火) 14:25:34 (644d)