Overview
CentOS 5 における Cacti の構築手順です。Cacti はオープンソースのネットワーク監視ツールで、SNMP や他のプロトコルを使用してネットワークデバイスのパフォーマンスを監視します。このツールでは、ユーザーが設定可能なダッシュボードを利用して、グラフィカルにネットワークの情報を表示することができます。さらに、プラグインやテンプレートを用いて機能の拡張やカスタマイズが可能で、監視データの履歴を保存して長期間のトレンド分析を行うこともできます。
前提条件
以下が完了している必要があります。
- RRDtool のインストール
- MySQL データベースサーバーの構築
- Apache Web サーバーの構築
インストール
Cacti は CentOS 5の標準リポジトリに含まれていないため、公式サイトから入手する必要があります。以下を実施します。
- 公式サイトから Cacti をダウンロードし、
/var/www/cacti
に配置します。 - 展開します。
- リネームします。
/var/www/cacti
のオーナーとグループを変更します。
[root@centos-5 ~]# wget -P /var/www http://www.cacti.net/downloads/cacti-0.8.7g.tar.gz
[root@centos-5 ~]# tar xzxf /var/www/cacti-0.8.7g.tar.gz -C /var/www
[root@centos-5 ~]# mv /var/www/cacti-0.8.7g /var/www/cacti
[root@centos-5 ~]# chown -R apache:apache /var/www/cacti
/var/www/cacti/include/config.php
/var/www/cacti/include/config.php
をバックアップし、エディターで開きます。
[root@centos-5 ~]# cp /var/www/cacti/include/config.php /var/www/cacti/include/config.php.orig
[root@centos-5 ~]# vim /var/www/cacti/include/config.php
/var/www/cacti/include/config.php
を編集します。
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "password";
$database_port = "3306";
cron
cron を設定します。5 分間隔で SNMP を取得するように設定しています。
[root@centos-5 ~]# echo "*/5 * * * * apache /usr/bin/php /var/www/cacti/poller.php > /dev/null 2>&1" > /etc/cron.d/cacti
MySQL
MySQL にログインします。
[root@centos-5 ~]# mysql -u root -p
Cacti 用のデータベース: cacti
とユーザー: cactiuser
を作成します。
mysql> create database cacti;
mysql> grant all privileges on cacti.* to cactiuser@localhost identified by 'password';
mysql> quit;
Cacti スキーマをデータベースに登録します。
[root@centos-5 ~]# mysql -u cactiuser -p cacti < /var/www/cacti/cacti.sql
Apache
/etc/httpd/conf.d/cacti.conf
をエディターで開きます。
[root@centos-5 ~]# vim /etc/httpd/conf.d/cacti.conf
/etc/httpd/conf.d/cacti.conf
を編集します。
Alias /cacti /var/www/cacti
<Directory /var/www/cacti/>
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from 192.168.1.0/24
</Directory>
httpd
サービスを再起動します。
[root@centos-5 ~]# service httpd restart
監視対象追加
Cacti にデバイスを追加し、グラフを取得します。まず、デバイスの追加は以下のとおりです。
- Cacti にログインします。
- [ Management ] – [ Device ] を選択します。
- [ Add ] を選択します。
- [ Description ] にホスト名を入力します。
- [ Hostname ] に IP アドレスを入力します。
- [ Host Template ] に [ ucd/net SNMP Host ] を指定します。
- [ SNMP Version ] に [ Version 2 ] を指定します。
- [ Create ] を選択します。
- 設定したデバイスが問題なく稼動しており、SNMP の Version2 が 起動していれば、[ Associated Graph Templates ] には [ CPU Usage ], [ Load Average ], [ Memory Usage ] が表示されます。[ Associated Data Queries ] には [ Interface Statistics ], [ Monitored Partitions ] が表示されます。
グラフの追加は以下のとおりです。
- [ Create ] – [ New Graphs ] を選択します。
- [ Host: ] から作成したデバイスを選択します。
- グラフ化したいデータをチェックを入れ、[ Create ] を選択します。
グラフツリーの追加は以下のとおりです。
- [ Management ] – [ Graph Trees ] を選択します。
- [ Default Tree ] を選択します。
- [ Add ] を選択します。
- [ Tree Item Type ] – [ Host ] を選択します。
- [ Host ] から追加したいデバイスを選び、[ Create ] を選択します。
- [ Graphs ] から閲覧可能になります。
補足事項は以下のとおりです。
- [ Host Template ] の [ Local Linux Machine ] は、SNMP によるデータ取得ではなく、Local の Linux 上で実際にコマンドを実行し取得しているため、他のホストのデータを取得することはできません。
- CentOS のデフォルトの SNMP は net-snmp であるため、[ ucd/net SNMP Host ] テンプレートを選択すると、きれいなグラフが作成されてます。
- [ Monitored Partitions ] は、デバイスの SNMP で DISK の設定がされている必要があります。
CentOS 5 Cacti モニタリングサーバー構築