1. 程式人生 > >Centos6.5下安裝cacti-0.8.7i

Centos6.5下安裝cacti-0.8.7i

cacti安裝(初學者)

(因為我是新手,在安裝時有很多大大小小的問題,我都在這裏備註上了,歡迎萌新們參考)

Cacti功能

Cacti是通過 snmpget來獲取數據,使用 RRDtool繪畫圖形,而且你完全可以不需要了解RRDtool復雜的參數。

它提供了非常強大的數據和用戶管理功能,可以指定每一個用戶能查看樹狀結構、host以及任何一張圖,還可以與LDAP結合進行用戶驗證,同時也能自己增加模板。除了基本的 Snmp 流量跟系統資訊監控外,Cacti 也可外掛 Scripts 及加上 Templates 來作出各式各樣的監控圖。

Cacti簡介

cacti是用php語言實現的一個軟件,它的主要功能是用snmp服務獲取數據,然後用rrdtool儲存和更新數據,當用戶需要查看數據的時候用rrdtool生成圖表呈現給用戶。因此,

snmp和rrdtool是cacti的關鍵Snmp關系著數據的收集,rrdtool關系著數據存儲和圖表的生成。

Mysql配合PHP程序存儲一些變量數據並對變量數據進行調用,如:主機名、主機ip、snmp團體名、端口號、模板信息等變量

snmp抓到數據不是存儲在mysql中,而是存在rrdtool生成的rrd文件中(在cacti根目錄的rra文件夾下)。rrdtool對數據的更新和存儲就是對rrd文件的處理,rrd文件是大小固定的檔案文件(Round Robin Archive),它能夠存儲的數據筆數在創建時就已經定義。關於RRDTool的知識請參閱RRDTool教學

系統的安裝及基本網絡配置

操作系統的安裝

不寫了,我個人用的是CentOS 6.5最小化安裝

裝好系統以後關閉防火墻和selinux

#service iptables stop //關閉防火墻服務

#chkconfig iptables off //永久性關閉

#vi /etc/sysconfig/selinux //把SELINUX=enforcing改為SELINUX=disabled

安裝Cacti依賴的軟件

yum install mysql mysql-server mysql-devel php-mysql httpd php php-pdo lm_sensors net-snmp net-snmp-devel openssl-devel php-snmp net-snmp-utils perl-Net-Daemon perl-PlRPC perl-DBI rrdtool perl-rrdtool perl-DBD-MySQL net-snmp-libs

php-gd

SNMP配置

1、修改snmp配置文件

#vim /etc/snmp/snmpd.conf //進入snmpd.conf修改配置文件

1)41行中的default改為127.0.0.1

更改前:com2sec notConfigUser default public

更改後:com2sec notConfigUser 127.0.0.1 public

2)62行中的systemview改為all

更改前:access notConfigGroup "" any noauth exact systemview none none

更改後:access notConfigGroup "" any noauth exact all none none

3)85行的註釋"#"號去掉

更改前:#view all included .1 80

更改後:view all included .1 80

4)保存(:wq)

2、啟動snmpd/httpd/mysql服務

#service snmpd start //開啟snmp服務

#chkconfig snmpd on //設置snmp為開機啟動

#service httpd start //開啟http服務

#chkconfig httpd on //設置http為開機啟動

#service mysqld start //開啟mysql服務

#chkconfig mysqld on //設置mysql為開機啟動

#Snmpwalk -v 2c -c public localhost //測試snmpd是否正常啟動

設置 mysql數據庫

#mysql -uroot -p //新裝的mysql沒有密碼,直接回車進入mysql數據庫

(註:進入mysql後每次輸入命令後結尾都要加“;”結束符,命令才能成功輸入)

mysql> create database cacti; //首先創建cacti數據庫

mysql> grant all privileges on cacti.* to [email protected] identified by ‘cacti‘;

//創建cacti用戶並授權

(格式:grant all privileges on 數據庫名.* to 用戶名@主機名 identified by ‘密碼‘;

mysql>use cacti;

mysql>source /var/www/html/cacti/cacti.sql; //導入cacti數據庫文件

mysql>exit

CACTI安裝與配置

1cacti的安裝

wget http://www.cacti.net/downloads/cacti-0.8.8b.tar.gz

tar zxvf cacti-0.8.8b.tar.gz

mv cacti-0.8.8b /var/www/html/cacti

//將cacti-0.8.8b文件夾移到/var/www/html目錄下,並將cacti-0.8.8b重命名為cacti

(註:wget時有可能因ssl連接不成功而下載失敗,此時應該用root權限桌面模式,瀏覽器登入www.cacti.net/downloads,下載並解壓cacti-0.8.8b.tar.gz到/var/www/html目錄,然後把文件夾重命名為cacti

2、配置cacti

#vim /var/www/html/cacti/include/config.php

$database_type = "mysql"; //連接數據庫類型

$database_default = "cacti"; //cacti監控服務的數據庫

$database_hostname = "localhost"; //數據庫的主機

$database_username = "cactiuser"; //數據庫用戶名,這裏改為“cacti”

(因為先前在數據庫建的是"cacti"用戶,所以這裏默認的"cactiuser"要改為"cacti")

$database_password = "cactiabc"; //數據庫密碼,這裏改為“cacti”

(這裏默認的密碼我們也要改為 "cacti")

$database_port = "3306"; //數據庫端口

$database_ssl = false; //是否啟用ssl連接數據庫

然後保存退出(:wq

3、增加 cacti 用戶以用來寫入rrd和log目錄的數據,否則就會生成不了圖片

#cd /var/www/html/cacti

#useradd cacti

#cd /var/www/html/cacti

#chown -R cacti rra/ log

(註意log前有空格


添加任務計劃

具體多長時間讓cacti生成一次監控圖表自己決定,這裏以cacti的默認時間5分鐘生成一次為例

#cd /var/www/html/cacti

#crontab -e

*/5 * * * * php /var/www/html/cacti/poller.php > /dev/null 2>&1

加入這一行保存即可

配置好之後重啟進入桌面輸入http://ip/cacti,如下圖所示

技術分享

點擊NEXT

技術分享

點擊NEXT

技術分享

直接選擇finish即可

如果出現NOT FOUND”的紅色字樣這需要手動指定路徑


第一次登陸的用戶名和密碼都是admin

技術分享

第一次登陸會令你強制修改密碼

技術分享

點擊console->configuration->setting 右邊勾選Structured RRA Path

技術分享

因為該版本在刪除設備時無法同時刪除RRD數據庫,選擇該選項後方便以後刪除host同時在linux 下刪除相應hostid的RRD文件。

安裝提高效率加載spine插件

wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.7i.tar.gz

//下載spine文件 (註:若wget不了可以進入桌面並登入網址下載

tar zxvf cacti-spine-0.8.7i.tar.gz //解壓spine壓縮包

cd cacti-spine-0.8.7i

./configure //配置源代碼包

make&&make install //編譯安裝

cd /usr/local/spine/etc

cp spine.conf.dist spine.conf //重命名配置文檔

vi spine.conf //修改配置文檔

DB_Host localhost

DB_Database cacti

DB_User cacti

DB_Pass cacti

DB_Port 3306

DB_PreG 0

:wq //這裏的信息要和mysql的信息一致

cacti內 console->configuration->settings Paths內的spine poller file path 添加/usr/local/spine/bin/spine如下圖所示

技術分享

console->configuration->settings Poller內的 Poller Type 修改為spine

技術分享

cacti內添加各種插件

Thold:用於設備異常預警、閥值報警

Settings:用於郵件報警

Monitor:以圖形方式顯示設備狀態

Rrdclean:rrd輔助工具(不太懂)

進入console->User Managerment 點擊admin

技術分享

選擇Plugin Managerment然後保存,即可看到左邊setting的下方出現plugin managerment

技術分享

接下來下載插件安裝包依次為:settings、monitor、thold和rrdclean,並修改文件名

wget http://docs.cacti.net/_media/plugin:settings-v0.71-1.tgz -O settings.tgz

wget http://docs.cacti.net/_media/plugin:monitor-v1.3-1.tgz -O monitor.tgz

wget http://docs.cacti.net/_media/plugin:thold-v0.5.0.tgz -O thold.tgz

wget http://docs.cacti.net/_media/plugin:rrdclean-v0.41.tgz O rrdclean.tgz

解壓安裝包

tar zxvf settings.tgz

tar zxvf monitor.tgz

tar zxvf thold.tgz

tar zxvf rrdclean.tgz

把插件放進plugins目錄

mv settings monitor thold rrdclean /var/www/html/cacti/plugins/

進入cacti console->configure->plugin managerment 即可看到剛放進去的插件

技術分享

點擊actions 安裝和應用,即安裝好相對應的插件

技術分享

插件安裝成功!

Centos6.5下安裝cacti-0.8.7i