一、Cacti简介

Cacti是通过snmpget来获取数据,使用RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善。界面友好。软件 Cacti 的发展是基于让 RRDTool 使用者更方便使用该软件,除了基本的 Snmp 流量跟系统资讯监控外,Cacti 也可外挂 Scripts 及加上 Templates 来作出各式各样的监控图。
    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教学。

二、构造图:

三、准备所需要的软件包

Apache     http://www.apache.org/
    Mysql      http://www.mysql.com/
    Php        http://www.php.net
    Rrdtool    http://oss.oetiker.ch/rrdtool/
    Net-snmp   http://www.net-snmp.org/
    Cacti      http://www.cacti.net/
      其中apache、php通过yum安装

四、安装所需要的软件

4.1、安装LAMP

 [root@node2 app]#yum -y install httpd php php-mysql
[root@node2 app]#chkconfig httpd on
[root@node2 app]#/etc/init.d/httpd start

此处mysql已经用源码安装,无需使用yum安装。

安装完成后,可通过登陆页面测试:


    4.2、rrdtool

Rrdtool安装需要cairo、libxml2、pango库支持,可通过yum安装

 [root@node2 app]# yum -y install cairo-devel libxml2-devel pango-devel
[root@node2 app]# tar zxvf rrdtool-1.4.8.tar.gz
[root@node2 app]# cd rrdtool-1.4.8
[root@node2 rrdtool-1.4.8]# ./configure --prefix=/usr/local/rrdtool
[root@node2 rrdtool-1.4.8]# make && make install
[root@node2 rrdtool-1.4.8]# ln -s /usr/local/rrdtool/bin/* /usr/local/bin/

4.3、安装net-snmp

 [root@node2 app]# tar zxvf net-snmp-5.6.1.1.tar.gz
[root@node2 app]# cd net-snmp-5.6.1.1
[root@node2 net-snmp-5.6.1.1]# ./configure --prefix=/usr/local/net-snmp
[root@node2 net-snmp-5.6.1.1]# make && make install
[root@node2 net-snmp-5.6.1.1]# cp EXAMPLE.conf /etc/snmpd.conf
[root@node2 net-snmp-5.6.1.1]# ln -s /usr/local/net-snmp/bin/* /usr/local/bin/
[root@node2 net-snmp-5.6.1.1]# vim /etc/snmpd.conf
rocommunity public localhost #去掉注释
[root@node2 net-snmp-5.6.1.1]# /usr/local/net-snmp/sbin/snmpd -c /etc/snmpd.conf
----加入开启启动
[root@node2 net-snmp-5.6.1.1]# echo "/usr/local/net-snmp/sbin/snmpd -c /etc/snmpd.conf " >>/etc/rc.local

4.4、安装cacti

 [root@node2 app]# tar zxvf cacti-0.8.8b.tar.gz
----将cacti中的内容移到web目录
[root@node2 app]# mv cacti-0.8.8b/* /var/www/html
[root@node2 app]# chown -R apache:apache /var/www/html/
----连接到mysql创建数据库
[root@node2 app]# mysql
----创建cacti数据库
mysql> create database cacti;
----建立用户cacti,密码cacti123
mysql> insert into mysql.user(host,user,password) values ('localhost','cacti',password('cacti123'));
----重载mysql授权表
mysql> flush privileges;
----把数据库cacti授权于用户cacti
mysql> grant all on cacti.* to cacti@'localhost' identified by 'cacti123';
[root@node2 app]# cd /var/www/html/
[root@node2 html]# mysql -ucacti -pcacti123 cacti<cacti.sql
[root@node2 html]# vi include/config.php
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "cacti123";
$database_port = "3306";
----在httpd中添加cacti目录的配置
[root@node2 app]# cat /etc/httpd/conf.d/cacti.conf
Alias /cacti /var/www/html/
<Directory /var/www/html/>
DirectoryIndex index.php
Options -Indexes
AllowOverride all
order deny,allow
allow from all
AddType application/x-httpd-php .php
php_flag magic_quotes_gpc on
php_flag track_vars on
</Directory>
----如果不添加此配置,登陆页面会报:
/cacti/auth_changepassword.php was not found on this serve

首次登陆页面可能会出现:

 FATAL: Cannot connect to MySQL server on 'localhost'. Please make sure you have specified a valid MySQL database name in 'include/config.php'

 或者:

 [root@node2 app]# mysql -uroot -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

解决方案:  ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

使用浏览器打开http://ip/install/,会看到安装向导:

点击FINISH后出现下面的界面:

默认用户名和密码admin,第一次登陆会要求更改密码。

4.5、设置cacti数据采集轮询时间

 [root@node2 ~]# crontab -l
*/5 * * * * env LANG=C /usr/bin/php /var/www/html/poller.php

五、常用插件安装

cacti-0.8.7i-PIA-3.1集成了plugin架构扩展,所以可以直接开启后就可以安装其他插件,打开"Console"----"User Management"----"admin"----"Realm Permissions",选择以下后,单击保存"save"。

之后会在"Console"中的"Configuration"看到一个"Plugin Management"。

5.1、Monitor安装(以图形方式显示设备状态)

[root@node2 u01]# tar zxvf monitor-v1.3-1.tgz
[root@node2 u01]# mv monitor /var/www/html/plugins/
[root@node2 u01]# cd /var/www/html/plugins/monitor/
[root@node2 monitor]# mysql -ucacti –pcacti123 cacti&lt;monitor.sql

打开Cacti的web页面"Plugin Management"激活插件:

5.2、Setting安装(用于邮件报警)

 [root@node2 u01]# tar zxvf settings-v0.71-1.tgz
[root@node2 u01]# mv settings /var/www/html/plugins

打开Cacti的web页面"Plugin Management"激活插件

打开"console"----"Settings"可以找到以下:

5.3、Thold安装(用于设备异常预警、阀值报警)

 [root@node2 u01]# tar zxvf thold-v0.4.9-3.tgz
[root@node2 u01]# mv thold /var/www/html/plugins/

打开Cacti的web页面"Plugin Management"激活插件:

 六、最后效果图:

Cacti Install的更多相关文章

  1. cacti install on ubuntu

    安装cacti需要的软件需要 nginx + php + mysql + rrdtool + cacti + snmp 1.nginx 安装配置 首先按照如下命令安装,明显是马虎不细心./config ...

  2. Cacti Install Error

    Cacti Error happened while installing: ERROR: Your MySQL TimeZone database is not populated. Please ...

  3. cacti快速安装

    一.cacti概述 1. cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户. ...

  4. Cacti安装详细步骤(转)

    一.cacti概述 1. cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户. ...

  5. CentOS 6.4 x64 Cacti 监控安装配置

    Cacti 监控安装配置   环境:   安装Cacti 的服务器   Linux 6.4 x64   ip 10.8.8.11     一: 配置iptables , selinux     vi ...

  6. cacti监控部署与配置

    cacti是一套基于PHP,mysql,SNMP及RRDTool开发的网络流量测试图形分析工具 cacti是通过snmpget来获取数据,使用RRDtool绘画图形 ,而且完全可以不需要了解RRDto ...

  7. 性能监控工具——Cacti安装文档

    一.Cacti安装说明 1.安装说明 一般性的安装说明,详细的操作系统具体的安装说明可用于Linux. 2.服务器安装要求 RRDTool 1.2.x或更高版本 MySQL 4.1.x或5.x更高版本 ...

  8. CentOS 6.6下Cacti安装部署

    Cacti简介 本章结构 常见平台 常见的服务器监控软件 cacti,流量与性能监测为主----http://www.cacti.net/ nagios,服务与性能监测为主---http://www. ...

  9. Linux监控二之cacti简单安装部署

    目录 cacti简单部署    1 环境依赖包部署    1 1.    cacti中文版0.8e搭建    2 2.    cacti安装向导 url:http://192.168.200.243/ ...

随机推荐

  1. jango_modles_views显示

    views #!/usr/bin/env python #__coding:utf-8__ from django.shortcuts import render,render_to_response ...

  2. underscore源码解析

    (function() { // 创建一个全局对象, 在浏览器中表示为window对象, 在Node.js中表示global对象 var root = this; // 保存"_" ...

  3. Swift实战-豆瓣电台(七)显示动画

    youku观看地址http://v.youku.com/v_show/id_XNzMxODQzNDIw.html 这是一个很酷的动画效果.特别是数据多的时候 知识点 在单元格(Cell)显示方法中设置 ...

  4. PG sys function

    The System Catalogs of PostgreSQLscott=# \dS List of relations Schema | Name | Type | Owner -------- ...

  5. spring纯java注解式开发(一)

    习惯了用XML文件来配置spring,现在开始尝试使用纯java代码来配置spring. 其实,spring的纯java配置,简单来说就是将bean标签的内容通过注解转换成bean对象的过程,没什么神 ...

  6. eclipse不自动弹出提示

    最近公司电脑上的Eclipse没有了自动提示功能,也不是全部不提示,大多数情况下按下“alt+/”键还会产生提示,但是当我在java项目中邪main方法和syso的时候,“alt+/”则会失效,今天在 ...

  7. nyist 673 悟空的难题

    http://acm.nyist.net/JudgeOnline/problem.php?pid=673 悟空的难题 时间限制:1000 ms  |  内存限制:65535 KB 难度:2   描述 ...

  8. XML节点名称中有小数点处理(deal with dot)导致使用xpath时报错解决方法

    <?xml version="1.0"?> <ModifyFiles> <_Layout.cshtml>123456</_Layout.c ...

  9. [原创]java WEB学习笔记48:其他的Servlet 监听器:域对象中属性的变更的事件监听器 (3 个),感知 Session 绑定的事件监听器(2个)

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  10. Python高频技巧总结[基础篇]

    0. 概要说明 python应用最多的场景还是web快速开发.爬虫.自动化运维:简单网站.自动Fuzz脚本.收发邮件脚本.简单验证码识别脚本. 爬虫在开发过程中也有很多复用的过程,这里总结一下,以后也 ...