CentOS 7 に Cacti をインストールする

#SNMPインストール

```
# yum -y install net-snmp
# yum -y install net-snmp-utils

```

viで以下の通り設定する。

```/etc/snmp/snmpd.conf
…

#       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
```

```/var/www/cacti/include/config.php
…
$database_username = "cacti";
$database_password = "$PASSWORD";
…
```

```/etc/httpd/conf.d/cacti.conf
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分毎に実行する。

```/etc/cron.d/cacti
*/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ボタンを押下してインストールを進めればよい。

![Capture 2016-04-09 22.49.04.png](https://qiita-image-store.s3.amazonaws.com/0/65994/cfbe3e13-e681-fee8-d170-c01a8b7edba1.png)

![Capture 2016-04-09 22.53.18.png](https://qiita-image-store.s3.amazonaws.com/0/65994/ead01005-9395-f6d7-787a-8aceda6ecead.png)

![Capture 2016-04-09 22.54.43.png](https://qiita-image-store.s3.amazonaws.com/0/65994/dd6e9af3-592b-3fd6-0538-0539a4ef92b1.png)

![Capture 2016-04-09 22.58.01.png](https://qiita-image-store.s3.amazonaws.com/0/65994/4a1ffd7a-52a0-b9aa-afe4-deae1bb68d0f.png)

![Capture 2016-04-09 23.01.33.png](https://qiita-image-store.s3.amazonaws.com/0/65994/5368a5b3-3ff3-bd26-7fd9-041ffa4d7883.png)

#おわりに
CentOS 7 に Cacti をインストールした。
冒頭で設定しているsnmpd.confなんかは、だいぶ暫定的なので、
後ほど他ホストの監視設定を入れる際に見直す。

#追記
インストール後、"graphs"リンクをクリックでグラフ(画像)が表示される想定だったが表示されなかった。

<DEL>
私は[こちら](https://www.ipentec.com/document/document.aspx?page=cacti-graph-does-not-appear-after-install-correctly)を参考にしたところ、まずはグラフを表示できた。
</DEL>
そもそもcronを再起動をしていなかったため、手順にcronの再起動を追記。

尚、SNMPエージェントを利用した場合の設定は[こちら](http://qiita.com/Kenji_TAJIMA/items/6bf9eb9d5d9ef4c8c3b6)を参照。