服務器集中檢測Cacti

服務器集中檢測Cacti
1、cacti概述

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

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

3. snmp抓到數據不是存儲在mysql中,而是存在rrdtool生成的rrd文件中(在cacti根目錄的rra文件夾下)。rrdtool對數據的更新和存儲就是對rrd文件的處理,rrd文件是大小固定的檔案文件(Round Robin Archive),它可以存儲的數據筆數在建立時就已經定義。mysql

1> 配置LAMP環境linux

2> 安裝rrdtoolnet-snmpsql

3> 安裝cacti數據庫

4>配置cactiapache

5> 配置cacti鏈接數據庫vim

6 >配置cron計劃任務瀏覽器

7 >配置開機自啓動服務器

8>測試

1> 配置LAMP環境

a. 安裝apache

這裏直接用yum裝了

b.安裝mysql數據庫

yum -y install mysql mysql-server mysql-devel

c. 配置apachephp

yum -y install zlib freetype libjpeg fontconfig gd libxml2 php-gd

yum -y install php php-mysql


2> 安裝rrdtoolnet-snmp

yum -y install perl-Net-Daemon perl-PlRPC perl-DBI rrdtool  perl-rrdtool  perl-DBD-MySQL

yum -y install php-pdo lm_sensors net-snmp php-snmp net-snmp-utils


3. 安裝cacti

a. 共享源碼包

b.掛載到linux


[root@hao media]# tar -zxvf cacti-0.8.8a.tar.gz -C /usr/src/   解壓到指定目錄

mv cacti-0.8.8a  /var/www/html/cacti///將解壓的cacti這個包移動到網頁根目錄下,更名爲cacti

4> 配置cacti

a. 配置httpd服務

vim /etc/httpd/conf.d/cacti.conf

Alias /cacti /var/www/html/cacti

<Directory /var/www/html/cacti>

DirectoryIndex index.php

AllowOverride all

order deny,allow

deny from all

allow from all

AddType application/x-httpd-php .php

php_flag magic_quotes_gpc on

php_flag track_vars on

</Directory>

b.配置apache

vim /etc/httpd/conf/httpd.conf    配置apache

276ServerName localhost:80

c.配置php

vim /etc/php.ini

946date.timezone = PRC

開啓服務

d. 配置 mysql並導入 cacti.sql

service mysqld start  (開啓服務)

mysql> create database cacti;

Query OK, 1 row affected (0.00 sec)

grant all on cacti.* to cacti@'localhost' identified by 'abc123';

GRANT 權限列表 ON 庫名.表名 TO ‘用戶名’@‘來源地址’【IDENTFIED BY ‘密碼’】

Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

導入數據庫

完成

e. 配置snmpd服務

vim /etc/snmp/snmpd.conf

41 om2sec notConfigUser  127.0.0.1  public//地址本身服務器的地址,也可用127.0.0.1來表示的,後面的"public"

    表示的是snmp 團體名,也能夠改的,默認的就是「public

62access  notConfigGroup ""      any      noauth    exact  all  none none//"exact"後面的單詞改爲"all"

85 view all  included  .1      80//把這一行前面的"#"號去掉

開啓服務

f.配置cacti目錄權限

useradd cacti -d /var/www/html/cacti  -s /sbin/nologin

chown -R root:root    /var/www/html/cacti/

chown -R cacti:cacti  /var/www/html/cacti/rra  /var/www/html/cacti/log

5> 配置cacti鏈接數據庫

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

29 $database_username = "cacti";

30$database_password = "abc123"


6 >配置cron計劃任務

crontab -u cacti –e

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

5分鐘 運行一次

7> 配置完成,設置服務開機自啓動

chkconfig httpd 35 on

chkconfig mysqld 35 on

chkconfig snmpd 35 on

  8>開始測試

客戶端IE瀏覽器中輸入網址:http://IP/cacti/

默認用戶名和密碼都是admin

集中監測完成!