こんにちは、鯨井貴博@opensourcetechです。
本日は、LPICレベル201の範囲に盛り込まれている
collectdについて構築してみました。
OSには、CentOS6.4(32bits)を使用しています。
なお、collectdとは、システムリソースを収集のみ行うプログラムであり、
グラフ化についてはcollectd-webなど他のプログラムを併用する必要があります。
まずは、collectdをyumでインストールする為に、
yumのレポジトリにEPELを追加します。
rpm -ivh http://ftp.riken.jp/Linux/fedora/epel/6/i386/epel-release-6-8.noarch.rpm
すると、/etc/yum.repos.dに
epel.repoとepel-testing.repoという2つのファイルが追加されます。
(2014/12/17追記)
本日時点ですが、epel.repoに記載されているレポジトリとして、
mirrorlistが有効となっており、 baseurlがコメントアウトされていますが、
baseurlを有効化、mirrorlistをコメントアウトとしなければ、
次工程のcollectdのyumでのインストールが出来ませんので、ご注意下さい。
そしていよいよ、collectdのインストール。
yum install collectd
インストール完了後、
設定ファイルである/etc/collectd.confのHostname設定を有効化します。
この設定をしておかないと、
collectdの起動時に以下にようなメッセージ/var/log/messagesに出て怒られます(笑)
May 26 14:01:16 localhost.localdomain collectd[2012]:
Looking up "localhost.localdomain" failed. You have set the "FQDNLookup" option,
but I cannot resolve my hostname to a fully qualified domain name.
そして、rrdデータを収集するcollectd-rrdtoolのインストール。
yum install collectd-rrdtool
collectdを起動します。
/etc/init.d/collectd start
すると、/var/lib/collectd/ホスト名/cpu-0などのディレクトリ配下に
*.rrdというファイルが生成されます。
データ収集に関してはここまでですが、
まだグラフ化するにはもう少し手間が必要となります。
必要となるのはWebサーバと、collectd-web。
今回はWebサーバとして、apache(httpd)を使用しました。
yum install httpd
yum install collectd-web
collectd-webをインストールすると、
/etc/httpd/conf.d配下に、collectd.confというファイルが作成されます。
デフォルトでは、
CGIの使用が出来ない、
及び127.0.0.1からのみのアクセスのみ許可されているので、
コンテナにOptions ExecCGI(CGIの許可)と
Allow from アクセス元ネットワークを追加します。
そして、apache(httpd)を起動します。
/etc/init.d/httpd start
※ServerNameディレクティブに関するメッセージが出てますが、
/etc/httpd/conf/httpd.confのServerNameを設定すれば消えます。
そして、iptables -Fでiptablesのルールをクリアします。
※INPUTルールを追加してもOKです。
その後、クライアントのWebブラウザから、
http://WebサーバのIPアドレス/collectd/bin/index.cgiにアクセスすると、
デフォルト設定では、
cpu・interface・load・memoryをグラフ化してモニタリング出来ます。