読者です 読者をやめる 読者になる 読者になる

harry’s memorandum

おれおれメモ

Cactiインストールの備忘録

monitoring linux

少し前CentOS5.xにCactiを導入した時のメモ

Cactiインストール

  • 色々ダウンロード
$ wget http://www.cacti.net/downloads/cacti-0.8.7b.tar.gz
$ wget http://cactiusers.org/downloads/cacti-plugin-arch.tar.gz
$ wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.2.27.tar.gz
$ wget http://cactiusers.org/downloads/discovery.gzip
$ wget http://cactiusers.org/downloads/monitor.gzip
$ wget http://cactiusers.org/downloads/settings.gzip
$ wget http://cactiusers.org/downloads/syslog.gzip
$ wget http://cactiusers.org/downloads/thold.gzip
$ wget http://cactiusers.org/downloads/clog.gzip
  • rrdtoolのコンパイルとインストール
$ tar xvzf rrdtool-1.2.27.tar.gz
$ cd rrdtool-1.2.27
$ ./configure
$ make
$ sudo make install
$ ln -s /usr/local/rrdtool-1.2.27 /usr/local/rrdtool
  • ユーザ作成
$ sudo /usr/sbin/groupadd cacti
$ sudo /usr/sbin/useradd -g cacti cacti
$ sudo chmod 755 /home/cacti/
  • cactiアーカイブを所定の場所へ展開
$ cd ~cacti/
$ sudo tar xvzf ~/cacti-0.8.7b.tar.gz
$ sudo chown -R cacti.cacti .
  • プラグインのパッチを適用
$ cd ~; tar xvzf cacti-plugin-arch.tar.gz
$ cd ~cacti/
$ patch -p1 -N < ~/cacti-plugin-arch/cacti-plugin-0.8.7b-PA-v2.1.diff
  • プラグインも展開しておく
$ cd ~cacti/plugins
$ for i in discovery.gzip monitor.gzip settings.gzip syslog.gzip thold.gzip clog.gzip
> do
> sudo tar xvzf ~/$i
> done
  • オーナを変更
$ chown -R apache.apache ~cacti/*
  • DBの作成*1
$ mysqladmin --user=root create cacti
$ mysql -u root
 mysql> grant all on cacti.* to cacti@localhost identified by 'cacti';
 Query OK, 0 rows affected (0.02 sec)
 mysql> flush privileges;
 Query OK, 0 rows affected (0.01 sec)
 mysql> exit
 Bye
  • DBの設定
$ sudo vim ~cacti/include/config.php
 $database_type = "mysql";
 $database_default = "cacti";
 $database_hostname = "localhost";
 $database_username = "cacti";
 $database_password = "cacti";
  • cactiのsqlとプラグインのsqlを実行
$ cd ~cacti
$ mysql -u root cacti < cacti.sql
$ cd ~cacti/plugins
$ for i in */*.sql
> do
> echo $i
> sudo mysql -u root cacti < $i
> done
discovery/discover.sql
monitor/monitor.sql
syslog/syslog.sql
thold/thold.sql
  • プラグインを有効と、url_pathも追加。
$ sudo vim ~/cacti/include/config.php
 $plugins = array();
 $plugins[] = 'clog';
 $plugins[] = 'discovery';
 $plugins[] = 'monitor';
 $plugins[] = 'settings';
 $plugins[] = 'syslog';
 $plugins[] = 'thold';

 $config["url_path"] = '/cacti/';
  • apacheの設定
$ sudo vim /etc/httpd/conf.d/cacti.conf
Alias /cacti /home/cacti/
<Directory /home/cacti/>
Options None
order deny,allow
# deny from all
# allow from 127.0.0.1 192.168.1.0/24
</Directory>
  • cronの設定
$ cat /etc/cron.d/cacti
MAILTO=cacti
*/5 * * * * cacti php //home/cacti/poller.php >/dev/null 2>&1

http://localhost/cactiにアクセスして完了。cactiの初期Adminユーザは admin/admin。
プラグインの有効化は、[User Management] -> [ユーザ] から [Realm Permissions] にあるPluginのチェックを入れてSave!.

*1:mysqlcactiユーザパスワードはお好みで