Knowledge/OS

Cacti Installation by yum on CentOS5

neo-orcl 2014. 7. 22. 12:31

Test date: 2014.07.21

 

1. 필요 패키지 인스톨

# yum install mysql-server mysql php-mysql php-pear php-common\
php-gd php-devel php php-mbstring php-cli php-snmp php-pear-Net-SMTP\
php-mysql httpd

 

2. mysql 설정

# service mysqld start
# mysqladmin -u root password NEWPASSWORD

 

3. cacti를 위한 mysql DB를 생성한다.

# mysql -u root -p -e 'create database cacti'

 

4. mysql DB 사용자인 cacti를 생성하면서 비밀번호를 설정한다.

# mysql -u root -p

mysql> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY '<password>';
mysql> FLUSH privileges;
mysql> \q

 

5. snmpd를 설치하고 설정한다.

# yum install net-snmp-utils php-snmp net-snmp-libs
# vi /etc/snmp/snmpd.conf

 

아래 내용 추가 및 변경

com2sec local     localhost           public
group MyRWGroup v1         local
group MyRWGroup v2c        local
group MyRWGroup usm        local
view all    included  .1                               80
access MyRWGroup ""      any       noauth    exact  all    all    none
syslocation Unknown (edit /etc/snmp/snmpd.conf)
syscontact Root  (configure /etc/snmp/snmp.local.conf)
pass .1.3.6.1.4.1.4413.4.1 /usr/bin/ucd5820stat

 

5-1. 저장 후 snmpd 시작 및 자동시작 on

 

# /etc/init.d/snmpd start
# chkconfig snmpd on

 

5-2. 제대로 snmp가 동작하는지 확인한다.

# snmpwalk -v 1 -c public localhost IP-MIB::ipAdEntIfIndex
결과 예시:
IP-MIB::ipAdEntIfIndex.10.10.29.68 = INTEGER: 2
IP-MIB::ipAdEntIfIndex.67.yy.zz.eee = INTEGER: 3
IP-MIB::ipAdEntIfIndex.127.0.0.1 = INTEGER: 1

 

6. cacti 설치

# yum install cacti

 

안될 경우 rpmforge 인스톨 해야한다.
http://wiki.centos.org/AdditionalResources/Repositories/RPMForge

 

7. cacti table 생성

 

7-1. cacti.sql의 위치를 찾는다.

 

# rpm -ql cacti | grep cacti.sql

예시)
[root@11g ~]# rpm -ql cacti | grep cacti.sql
/var/www/cacti/cacti.sql

위에서 출력된 파일로 cacti 테이블을 생성한다.

# mysql -u cacti -p cacti < /var/www/cacti/cacti.sql

 

8. cacti 설정

8-1. 예전 버전 방법

# vi /etc/cacti/db.php

$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "<password>";
$database_port = "3306";

 

8-2. 최근 버전 방법

# rpm -ql cacti | grep config.php
/var/www/cacti/include/config.php

 

# vi /var/www/cacti/include/config.php

$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "<password>";
$database_port = "3306";

 

9. httpd 설정

# vi /etc/httpd/conf.d/cacti.conf

Allow 내용을 변경한다. all로 하던지, 네트워크 지정하던지.

Another option is create /usr/share/cacti/.htaccess file and password protect the directory. Finally, restart httpd:

# service httpd restart

 

10. cacti cronjob을 설정한다. 보통 기본으로 설정되어 있다

 

# vi /etc/cron.d/cacti

*/5 * * * *     cacti   /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1

 

11. Run cacti installer

설정한 http 주소로 들어간다.
http://ipaddress/cacti

설치 스탭을 따라간다. 기본 계정은 Admin/admin 이다.

 

※ SNMP data 수집 설정하기
=> Click on Devices
=> Select Localhost
=> Make sure SNMP options

 

※ SNMP 그래프 만들기
Click on "Create Graphs for this Host" link on top right side.
Select SNMP - Interface Statistics
Select a graph type (such as In/Out bytes with total bandwidth)
Finally, click on Create button.