Cacti是什麼?
Cacti是一套完整的前端RRDTool的,它存儲所有必要的信息來創建圖表和數據寫入它們在MySQL數據庫中。.前端完全是PHP驅動的。隨著能夠保持圖像,顯示數據來源,並循環檔案在數據庫中。還有SNMP支持那些用來創造與MRTG的流量圖。
安裝環境:
Centos 6.5 mini安裝
##################先做Server前置設定#########################
#關掉防火牆與selinux
service iptables stop
service ip6tables stop
chkconfig iptables off
chkconfig ip6tables off
vi /etc/sysconfig/selinux
#時區變更,校時,定時校時
yum -y install ntp
cp /usr/share/zoneinfo/Asia/Taipei /etc/localtime
/usr/sbin/ntpdate -s tock.stdtime.gov.tw
date
vi /etc/crontab
* */6 * * * root (/usr/sbin/ntpdate -s tock.stdtime.gov.tw; /sbin/clock -w) > /dev/null
#EPEL更新
Mysql EPEL(若要裝最新版的mysql才須裝)
rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
#系統程式更新
yum -y update
##################Cacti安裝環境#########################
###安裝php 程式執行環境。
yum -y install php php-devel php-snmp php-mysql php-xml
###安裝mysql 資料庫軟體
yum -y install mysql mysql-server mysql-devel
###安裝snmp 訊息服務
yum -y install net-snmp net-snmp-devel net-snmp-utils
###取得rrdtool 第三方安裝套件,版本可能一直更新,可以到rpmforge-release目錄找最新版本
rpm -Uvh http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
yum -y install rrdtool
###開啟服務:
/etc/init.d/httpd start
/etc/init.d/mysqld start
/etc/init.d/snmpd start
/etc/init.d/crond start
###開機啟動
chkconfig httpd on
chkconfig mysqld on
chkconfig snmpd on
chkconfig crond on
###以上的軟體安裝完畢後請檢查檢查幾個項目是否有正確安裝,檢查的指令使用
php -m
###需要檢查的項目mysql,snmp,xml,session,sockets
php -m | grep mysql
php -m | grep snmp
php -m | grep xml
php -m | grep session
php -m | grep sockets
###設定MySQL 資料庫管理密碼。
mysqladmin --user=root password 123456 //練習密碼可以亂打,若用在正式環境可別用這麼簡單的密碼
##################Cacti安裝#########################
cd /var/www/html/
wget http://www.cacti.net/downloads/cacti-0.8.8a.tar.gz //若下載不到,請到downloads目錄下找最新版本來安裝
tar -xzvf cacti-0.8.8a.tar.gz
mv cacti-0.8.8a cacti
###建立cacti 資料庫
mysql --user=root --password=123456 create cacti
cd cacti
###將cacti.sql 的資料表匯入到cacti 資料庫中。
mysql --user=root --password=123456 cacti < cacti.sql
###GRANT 權限給其他的使用者。(這一個部分如果只有一個root 的使用者就可以先略過不設定。)
mysql -uroot -p
mysql > GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactiuser';
mysql > flush privileges;
mysql > exit
###設定Cacti設定檔
vim include/config.php
$database_type = "mysql";
$database_default = "cacti"; /* 設定資料庫名稱 */
$database_hostname = "localhost";
$database_username = "cactiuser"; /* 設定資料庫帳號 */ //Step 8設定的帳號
$database_password = "cactiuser"; /* 設定資料庫密碼 */ //Step 8設定的帳號
$database_port = "3306"; /* 設定資料庫連線的PORT */
$database_ssl = false;
$url_path = "/cacti/";
###設定防火牆開啓MySQL 資料庫通訊PORT。(沒防火牆跳過)
vi /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
service iptables restart
###更改目錄權限
chown -R apache:apache /var/www/html/cacti
###設定Cacti 的排程設定,每5分鐘更新一次。
vi /etc/crontab
*/5 * * * * apache php /var/www/html/cacti/poller.php > /dev/null 2>&1
###修改etc/snmp/snmpd.conf
com2sec local localhost public //public是預設,可以自行修改
com2sec mynetwork 192.168.1.x public //設定可存取這台SNMP的IP或網段
group notConfigGroup v1 local
group notConfigGroup v2c local
group notConfigGroup v1 mynetwork
group notConfigGroup v2c mynetwork
view systemview included .1.3.6.1.2.1.2
view all included .1 80
access notConfigGroup "" any noauth prefix all none none
access notConfigGroup "" any noauth prefix all all all
/etc/init.d/snmpd restart
###檢查SNMP
snmpwalk -v 1 -c cmpublic localhost
udp 161 port記得要有起來
###連線Cacti Web UI
http://ip/cacti
預設帳號admin,按登入後會要求輸入新密碼,之後會做一些設定,設定完就進入Cacti畫面
安裝是不是蠻簡單的~下一篇再來說自己有用到的一些應用~