<前のページ | 1 | 2 | 3 | 4 | 5 | 次のページ>
それでは取得したデータをグラフ化する方法を紹介しましょう。サーバの稼働情報をグラフ化するツールとしてはMRTGが長年定番として使われてきましたが、最近はRRDtoolを利用するケースが増えているようです。RRDtoolはMRTGと同じ作者(Tobias Oetiker氏)によって開発されたツールで、MRTGをより柔軟にして汎用性を高めたものがRRDtoolとなっています。ただし柔軟性が増した分、RRDtoolのセットアップはMRTGに比べると面倒です。
幸いipmitoolにはRRDtoolを使ってサーバの情報をグラフ化するためのスクリプトが付属しているので、それを利用することにします。利用するスクリプトはソースアーカイブのcontribディレクトリに入っていますが、Ubuntu 7.10のバイナリパッケージをインストールしたところ/usr/share/ipmitoolに配置されていました。
今回設置するスクリプトはipmitoolで収集したデータをRRDtoolで記録し、CGIスクリプトでグラフ化してWebページに表示するというものです。そこで、まずはWebサーバ(Apache)とRRDtoolをインストールします。
$ sudo apt-get install apache2 rrdtool
次にRRDtoolのデータベースファイルを格納するディレクトリを作成します。Ubuntu 7.10の場合、Apacheのドキュメントルートが/var/wwwに設定されているのでこの下に/var/www/rrdというディレクトリを作成しました。このディレクトリはデータ収集スクリプトの実行ユーザーが書き込め、かつCGIスクリプトの実行ユーザーが読み出しできるようにしておく必要があります。そこで以下のようにオーナーを変更しました。
$ sudo mkdir /var/www/rrd $ sudo chown morihide:www-data /var/www/rrd
「morihide」は筆者の(監視ホスト上での)ユーザー名で、「www-data」はApacheの実行グループ名です。これにより、CGIスクリプトはwww-dataグループの権限で/var/www/rrdにあるファイルを読み出せるようになります(データベースファイル自体もその他のユーザー(other)から読み出せる必要があります)。
ディレクトリを用意したら、データベースファイルを作成します。これにはcreate_rrds.shスクリプトを利用します。実行する前にスクリプト中の「hostname」の行と、「ipmi_cmd」の行、「rrd_dir」の行を以下のように修正します。
$ cat /usr/share/ipmitool/create_rrds.sh #!/bin/bash # # Copyright (c) 2003 Fredrik Ohrn. All Rights Reserved. # # See the included COPYING file for license details. # # Edit the variables hostname="i110Rc-1h" ←監視対象サーバのホスト名 ipmi_cmd="/usr/local/bin/ipmitool -I lanplus -H 172.17.4.129 -U hmori -P xxxxxxxx" ←サーバのBMCにアクセスするためのipmitoolコマンド rrd_dir="/var/www/rrd" ←データベースファイルを配置するディレクトリ # No need to edit below this point. IFS=" " for line in `eval $ipmi_cmd -c -v sdr list full` ; do IFS=, split=($line) file="$rrd_dir/$hostname-${split[0]}.rrd" if [ -e "$file" ] ; then echo "Skipping existing file $file" continue fi echo "Creating file $file" rrdtool create "$file" \ --step 300 DS:var:GAUGE:900:${split[16]}:${split[17]} \ RRA:AVERAGE:0.5:1:288 \ RRA:AVERAGE:0.5:6:336 \ RRA:AVERAGE:0.5:12:720 done
修正したらスクリプトを実行して、データベースファイルを作成します。このスクリプトはroot権限は必要としないので、一般ユーザーの権限で実行します。
$ /usr/share/ipmitool/create_rrds.sh
<前のページ | 1 | 2 | 3 | 4 | 5 | 次のページ>