Opensourcetechブログ

OpensourcetechによるNGINX/Kubernetes/Zabbix/Neo4j/Linuxなどオープンソース技術に関するブログです。

collectd collectd-rrdtool collectd-webによるシステムリソース収集&モニタリング by CentOS6.4 on virtualbox

こんにちは、鯨井貴博@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つのファイルが追加されます。

f:id:opensourcetech:20140526155323p:plain

(2014/12/17追記)

本日時点ですが、epel.repoに記載されているレポジトリとして、

mirrorlistが有効となっており、 baseurlがコメントアウトされていますが、

baseurlを有効化、mirrorlistをコメントアウトとしなければ、

次工程のcollectdのyumでのインストールが出来ませんので、ご注意下さい。

 

 

そしていよいよ、collectdのインストール。

yum install collectd

f:id:opensourcetech:20140526155335p:plain

 

インストール完了後、

設定ファイルである/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.

f:id:opensourcetech:20140526155346p:plain

 

そして、rrdデータを収集するcollectd-rrdtoolのインストール。

yum install collectd-rrdtool

f:id:opensourcetech:20140526155355p:plain

 

collectdを起動します。

/etc/init.d/collectd start

すると、/var/lib/collectd/ホスト名/cpu-0などのディレクトリ配下に

*.rrdというファイルが生成されます。

f:id:opensourcetech:20140526155405p:plain

f:id:opensourcetech:20140526155416p:plain

 

データ収集に関してはここまでですが、

まだグラフ化するにはもう少し手間が必要となります。

必要となるのはWebサーバと、collectd-web。

今回はWebサーバとして、apache(httpd)を使用しました。

yum install httpd

f:id:opensourcetech:20140526155424p:plain

 

yum install collectd-web

f:id:opensourcetech:20140526155432p:plain

 

collectd-webをインストールすると、

/etc/httpd/conf.d配下に、collectd.confというファイルが作成されます。

 

デフォルトでは、

CGIの使用が出来ない、

及び127.0.0.1からのみのアクセスのみ許可されているので、

コンテナにOptions ExecCGI(CGIの許可)と

Allow from アクセス元ネットワークを追加します。

f:id:opensourcetech:20140526155441p:plain

 

そして、apache(httpd)を起動します。

/etc/init.d/httpd start

※ServerNameディレクティブに関するメッセージが出てますが、

    /etc/httpd/conf/httpd.confのServerNameを設定すれば消えます。

 

そして、iptables -Fでiptablesのルールをクリアします。

※INPUTルールを追加してもOKです。

f:id:opensourcetech:20140526155453p:plain

 

その後、クライアントのWebブラウザから、

http://WebサーバのIPアドレス/collectd/bin/index.cgiにアクセスすると、

デフォルト設定では、

cpu・interface・load・memoryをグラフ化してモニタリング出来ます。

f:id:opensourcetech:20140526155503p:plain

 

f:id:opensourcetech:20140526155511p:plain

 

f:id:opensourcetech:20140526155520p:plain

 

f:id:opensourcetech:20140526155531p:plain

 

Opensourcetech by Takahiro Kujirai