collectdをインストールしてサーバの監視をしよう!

サーバを構築する際、ウェブサーバやメールサーバなど連続運用が必要なサーバは監視が大切です。
collectdはCPUやメモリの負荷状況、トラフィックの状況をグラフ化することができるとても便利なツールです。

しかもインストールも簡単ですぐに使用できちゃいます。

collecctdインストール

collectdをインストールする際、「EPEL」というパッケージを入れないとインストールされないので、事前に「epel-release」をインストールします。

$ yum list epel-release
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: www.ftp.ne.jp
 * extras: www.ftp.ne.jp
 * updates: www.ftp.ne.jp
利用可能なパッケージ
epel-release.noarch                                              6-8                                               extras
$ yum install epel-release

EPELのインストールが無事に完了すれば、「collectd」をインストールします。

$ yum install collectd

インストールが完了すれば「collectd」を起動します。

$ service collectd start
collectd を起動中:                                         [失敗]

上記のようにサービスを起動すると失敗してしまします。

ログを確認すると以下のようなメッセージが吐かれています。

$ tail -f /var/log/messages 
Feb 12 21:07:18 CentOS6 collectd[1990]: Looking up "CentOS6" failed. You have set the "FQDNLookup" option, but I cannot resolve my hostname to a fully qualified domain name. Please fix you network configuration.

Hostnameの#を外さないと怒られちゃいます。

$ service collectd start
collectd を起動中:                                         [  OK  ]

rrdデータを収集するcollectd−rrdtoolをインストールする

collectdでデータを収集するためにrrdtoolをインストールします。

$ yum -y install collectd-rrdtool

/var/lib/collectd/ホスト名/のディレクトリ配下にrrdファイルが生成されます。

collectdを再起動します。

$ service collectd restart

データ収集を完了後、Web上でグラフ化するためにapache(httpd)とcollectd−webをインストール

収集したデータをwebで観覧できるように必要なツールをインストールしていきます。

$ yum -y install httpd

$ yum -y install collectd-web

collectd−webをインストールすると/etc/httpd/conf.d/の配下にcollectd.confというファイルが作成されます。

しかし、これだけではWeb上でグラフを表示できません。
デフォルトで127.0.0.1からのみのアクセスが許可となっています。

なので、collectd.confにて「Allow from」でアクセス元のネットワークを追加します。

$ vim /etc/httpd/conf.d/collectd.conf 

$ Configuration for collectd.

ScriptAlias /collectd/bin/ /usr/share/collectd/collection3/bin/
Alias /collectd/ /usr/share/collectd/collection3/

<Directory /usr/share/collectd/>
    AddHandler cgi-script .cgi
    DirectoryIndex bin/index.cgi
    Order Deny,Allow
    Deny from all
#    Allow from 127.0.0.1
    Allow from 192.168.0.0/24
</Directory>

Webでcollectdを確認する

httpdを起動します。

$ service httpd start

あとはブラウザで以下のアドレスへアクセスします。

https://collectdをインストールしたサーバのアドレス/collectd/bin/index.cgi

以下のようにWEBUIで表示されれば構築完了です。

CPU
スクリーンショット 2015-02-15 23.59.08

interface
スクリーンショット 2015-02-15 23.59.45

load
スクリーンショット 2015-02-16 0.00.48

memory
スクリーンショット 2015-02-16 0.00.56

お疲れ様でした。

以上です。




エンジニアのオンライン学習

ITエンジニアにおすすめの教材、オンラインスクールです。
無料からエンジニアの学習ができる教材などまとめているので参考にしてください。

おすすめオンライン教材
自宅で学習ができるオンラインスクール

ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。



コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

ABOUT US
げんき☆ひろき
インターネット関連のSEをやっています。 ネットワーク、サーバー、ストレージ、仮想基盤まで幅広く手を出しており、MVNOの構築経験もあります。 現在は、Pythonを使ったプログラミングの開発をしネットワークの自動化ツールを作成しています! Pythonの入門書も作成しているので、ぜひ参考にしてください!