#SNMPインストール
# yum -y install net-snmp
# yum -y install net-snmp-utils
viで以下の通り設定する。
…
# sec.name source community
#com2sec notConfigUser default public
com2sec local localhost public
#com2sec mynet 192.168.1.0/24 public
…
# groupName securityModel securityName
#group notConfigGroup v1 notConfigUser
#group notConfigGroup v2c notConfigUser
group mygroup v1 local
#group mygroup v1 mynet
…
# Make at least snmpwalk -v 1 localhost -c public system fast again.
# name incl/excl subtree mask(optional)
#view systemview included .1.3.6.1.2.1.1
#view systemview included .1.3.6.1.2.1.25.1.1
view all included .1 80
...
# group context sec.model sec.level prefix read write notif
#access notConfigGroup "" any noauth exact systemview none none
access mygroup "" any noauth exact all none none
…
disk / 10000
# chkconfig snmpd on
# /usr/sbin/snmpd start
#RRDToolインストール
# -y yum install rrdtool
#MySQLインストール
# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
# rpm -Uvh mysql-community-release-el7-5.noarch.rpm
# yum -y install php-mysql
# chkconfig mysqld on
# systemctl start mysql.service
#Cactiインストール
# cd /usr/local/src/
# wget http://pkgs.repoforge.org/cacti/cacti-0.8.8b-1.el6.rf.noarch.rpm
# rpm -ivh --nodeps cacti-0.8.8b-1.el6.rf.noarch.rpm
…
$database_username = "cacti";
$database_password = "$PASSWORD";
…
Alias /cacti/ /var/www/cacti/
<Directory /var/www/cacti/>
DirectoryIndex index.php
Options -Indexes
AllowOverride all
# ひとまずゆるく設定する
# Require local
# Require 172.20.10.3
# Require ip all
AddType application/x-httpd-php .php
# php_flag magic_quotes_gpc on
# php_flag track_vars on
</Directory>
#DB作成
# mysqladmin --user=root create cacti
# mysql cacti < /var/www/cacti/cacti.sql
# mysql --user=root mysql
> grant all on cacti.* to cacti@localhost identified by '$PASSWORD';
> flush privileges;
> exit;
cacti.sqlが見つからない場合は、find / -name "cacti.sql" 等で探す。
#CRON設定
念のため、cronの設定を確認する。
5分毎に実行する。
*/5 * * * * cacti php /var/www/cacti/poller.php &>/dev/null
再起動をしておく。
systemctl restart crond
#Cactiへアクセス
http://[ホストIP]/cacti
##結果1
PHPファイルがダウンロードされる
よくよく考えたらCentOSをインストールしてからPHPを入れていなかったので、入れてあげる。
yum -y install php
##結果2
FATAL: Cannot connect to MySQL server on 'localhost'. Please make sure you have specified a valid MySQL database name in 'include/config.php'
config.phpに記載れているユーザとパスワード、DB名で以下の通りアクセすると、問題なく接続できる。
# mysql -u cacti -p cacti
よくよく考えたら、パスワードの先頭のドル記号 かつ ダブルクォーテーションで
括られているため、$PASSWORDが変数と認識され式展開されたいた模様。
$PASSWORDは宣言していないため、パスワード未入力状態でDBに接続試行していた。
なので、以下のとおり、修正。
#$database_password = "$PASSWORD";
$database_password = '$PASSWORD';
あとはNEXTボタンを押下してインストールを進めればよい。
#おわりに
CentOS 7 に Cacti をインストールした。
冒頭で設定しているsnmpd.confなんかは、だいぶ暫定的なので、
後ほど他ホストの監視設定を入れる際に見直す。
#追記
インストール後、"graphs"リンクをクリックでグラフ(画像)が表示される想定だったが表示されなかった。
尚、SNMPエージェントを利用した場合の設定はこちらを参照。