cacti監控部署與配置

 cacti是一套基於PHP,mysql,SNMP及RRDTool開發的網絡流量測試圖形分析工具 php

   cacti是經過snmpget來獲取數據,使用RRDtool繪畫圖形 ,並且徹底能夠不須要了解RRDtool複雜的參數 ,它提供了很是強大的數據和用戶管理功能,能夠指定每一個用戶能查看樹狀結構,host以及任何一張圖,還能夠與LDAP結合進行用戶驗證,同時也能本身增長模板,功能很是強大完善。界面 友好,軟件cacti的發展是基於讓RRTool使用這更方便的使用該軟件,除了基本 的SNMP的流量更系統諮詢監控外,cacti也可外掛scripts及加上Temlates來作出各式各樣的監視html

   cacti是用php語言實現 的軟件,它主要 功能是用snmp服務獲取數據,而後用rrdtool存儲和更新數據,當用戶須要查看數據的時候用rrdtool生成圖形呈現給用戶,所以,snmp和rrdtool是cacti的關鍵,snmp關係着數據收集 ,rrdtool關係這數據存儲和圖表的生成mysql

     mysql配合PHP程序存儲一些變量數據並對變量數據進行調用,如:主機名,主機IP,snmp團體名,端口,模板信息等變量,snmp抓 到的數據不是存儲在mysql中的,而是存在rrdtool生成rrd文件的處理 ,rrd文件 是大小固定的檔案文件,它可以存儲的數據筆數在建立時就已經定義。ios

Cacti監控安裝及監控本機c++

Nagios  zabbixweb

 

Cacti簡介sql

  • 是一套基於php、mysql、SNMP、RRDTool開發的網絡流量監測圖形分析工具。Cacti經過snmpget獲取數據,使用RRDTool繪畫圖形。最後經過web方式呈現出來
  • Cacti三層架構:

–        數據採集層:經過SNMP或自定義腳本進行數據採集數據庫

–        數據存儲層:經過cacti模板等數據存放至MYSQL中apache

–        數據展示層:經過WEB方式呈現出來vim

能夠把他理解爲一個php網站

 

1、安裝

1、安裝必須的軟件包

[root@cacti-server ~]# yum -y install httpd php php-mysql php-ldap php-xml mysql mysql-server

[root@cacti-server ~]# yum  install –y net-snmp lm_sensors gcc gcc-c++ libart_lgpl-develzlib-devel libpng-devel freetype-devel net-snmp-utils

2、安裝rrdtool。Rrdtool是一個繪圖工具,系統光盤中沒有提供,因此須要手工安裝

(1)安裝rrdtool編譯時所需軟件

 

(2)解壓rrdtool並進行配置安裝

[root@cacti-server ~]# tar zxvf rrdtool-1.2.30.tar.gz -C /usr/src/cd

[root@cacti-server ~]# cd /usr/src/rrdtool-1.2.30/

[root@cacti-server rrdtool-1.2.30]# ./configure --prefix=/usr/local/

[root@cacti-server rrdtool-1.2.30]# make && make install

3、啓動mysql數據庫和httpd服務

[root@cacti-server ~]# /etc/init.d/httpd start

 [root@cacti-server ~]# chkconfig --add httpd

[root@cacti-server ~]# chkconfig httpd on

[root@cacti-server ~]# /etc/init.d/mysqld start

[root@cacti-server ~]# chkconfig --add mysqld

[root@cacti-server ~]# chkconfig mysqld on

4、安裝cacti

(1)cacti本質上是一個PHP網站,只須要把它解壓並拷貝到/var/www/html/目錄下便可

[root@cacti-server ~]# tar zxvf cacti-0.8.8a.tar.gz -C /usr/src/

[root@cacti-server ~]# cd /usr/src/

[root@cacti-server src]# mv cacti-0.8.8a/ /var/www/html/cacti

[root@cacti-server src]# cd /var/www/html/cacti/

(2)建立cactiuser用戶,並設置相關目錄的屬主、屬組

[root@cacti-server cacti]# adduser cactiuser

[root@cacti-server cacti]# chown -R cactiuser.cactiuser rra/ log/

其中rra目錄是收集到的監控數據目錄,log目錄是日誌目錄

(3)建立數據庫。由於cacti並無把建立數據庫的腳本寫到網頁中,因此須要管理員手工建立相關數據庫。

進入Mysql數據庫

Mysql

建立數據

mysql> create database cactidb default character set utf8;

爲數據庫進行受權:

mysql> grant all on cactidb.* to 'cactiuser'@'localhost' identified by '123.com';

Query OK, 0 rows affected (0.00 sec)

(4)以cactiuser的身份把sql腳本導入到數據庫

[root@cacti-server ~]# mysql -u cactiuser -p123.com cactidb < /var/www/html/cacti/cacti.sql

5)修改相關的php文件,以便於apache經過php鏈接mysql數據庫時,能夠提供正確的用戶名、密碼等

[root@cacti-server ~]# cd /var/www/html/cacti/ 

[root@cacti-server cacti]# vim include/config.php

 26行$database_type = "mysql";

$database_default = "cactidb";

$database_hostname = "localhost";

$database_username = "cactiuser";

$database_password = "cacti";

$database_port = "3306";

 

總結:

一、  先安裝cacti須要的系統包

二、  解壓安裝

三、  設置數據庫,導入cacti.sql

四、  修改config.php

 

(6)打開網頁按照嚮導完成安裝

在瀏覽器輸入http://192.168.20.138/cacti/install/

用戶名和密碼都是admin,首次登錄後,要求修改admin的密碼    123.com

 

修改完後便可進入界面

 

2、監控自身

CACTI監控的時候,是經過SNMP實現的。

SNMP:簡單網絡管理協議  UDP16一、162

查詢方法:

輪詢:監控端週期性地查詢被監控端161

陷阱:被監控端主動向監控端彙報事件162

SNMP消息類型:

get-request:監控端查詢被監控端

get-next-request:監控端查詢被監控端某一項更詳細內容

set-request:監控端設置被監控端的某些參數

get-response:被監控端迴應監控端

trap:陷阱,被監控端主動向監控端彙報事件

1、配置snmp                                                             

[root@cacti-server cacti]# vim /etc/snmp/snmpd.conf

41行定義安全組

85行定義視圖

62行向安全組受權相應的視圖

 

2、啓動服務

[root@cacti-server ~]# /etc/init.d/snmpd start

正在啓動 snmpd:                                           [肯定]

[root@cacti-server ~]# netstat -anput | grep snmp

tcp        0      0 127.0.0.1:199               0.0.0.0:*                   LISTEN      23462/snmpd        

udp        0      0 0.0.0.0:161                 0.0.0.0:*                               23462/snmpd        

[root@cacti-server ~]# chkconfig --add snmpd

[root@cacti-server ~]# chkconfig snmpd on

3、經過WEB頁面添加被監控主機

(1)刪除存在的主機

 

 

(2)添加要監控的主機

3)添加監控項

上一步點擊Create後,把頁面拉到底部,後面顯示沒有數據,那麼它是無用的,點擊後面的X號,將其刪除。

添加上SNMP可以監控的項目

使用相同的辦法,把處理器信息也添加上。最後保存

4)爲監控項繪製圖形

在WEB頁的最上端,點擊建立圖形

選項要監控的項目,而後點擊Create

 

 

(5)把建立的圖形加入到圖形樹

(6)爲圖形生成數據

在監控服務器上,以cactiuser的身份執行php命令

[root@cacti-server cacti]# su - cactiuser

[cactiuser@cacti-server ~]$ php /var/www/html/cacti/poller.php

F5刷新便可出線圖形

(7)設置計劃任務

爲了每隔1分鐘監控服務器都會獲取一次數據,須要使用計劃任務,每隔1分鐘生成一次數據

 crontab  -e

*/1  *  *  *  *  /usr/bin/php /var/www/html/cacti/poller.php &> /dev/null

過幾分鐘顯示下圖爲正常

相關文章
相關標籤/搜索