服务器集中检测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

集中监测完成!