CentOS下安装配置Cacti
cacti简介
随着公司规模扩大,服务器也日渐增多,对服务器集群的网络流量和服务器性能实时监测显得愈发重要。开源阵营中常用有MRTG(MultiRouter Traffic Grapher)--基于SNMP的网络流量统计分析工具。它通过SNMP协议从设备得到并记录网卡信息,并将流量负载以图形的方式显示出来,系统负载小,使用方便。不过,由于MRTG存在诸多缺点,其作者Tobias Oetiker在1999年就已经开始开发另一套开源软件RRDTool来代替MRTG。,但是RRDTool的主要作用是数据的存储和将数据绘画成图像。要实现数据的采集和管理,需要通过cacti辅助RRDTool。
cacti是用PHP语言开发的一套完全面向RRDTool的B/S系统,它用SNMP服务获取数据,然后用RRDTool储存和更新数据并生成详细图表呈现给用户。cacti通过Mysql存储了所有RRDTool创建图像需要用到的信息以及管理信息,如:主机名、主机ip、snmp团体名、端口号、模板信息等。注意:SNMP抓到数据不是存储在mysql中,而是存在rrdtool生成的rrd文件中(在cacti根目录的rra文件夹下)。rrdtool对数据的更新和存储就是对rrd文件的处理,rrd文件是大小固定的档案文件(Round Robin Archive),它能够存储的数据笔数在创建时就已经定义。
服务器实时监控系统架构及工作流程
整个监控系统主要由四部分组成:
1、Cacti系统——用户控制的平台,用户在此进行所有的设置与查看图表。当然Cacti也需要WEB服务器如Apache和PHP环境的支持;
2、SNMP采集工具--Unix下使用 Net-SNMP软件包自带的"snmpget"和"snmpwalk"等程序,windows下使用php的snmp功能;
3、RRDTool绘图引擎--性能数据的存储和绘画图像;
4、MySQL数据库--储存RRDTool绘图所需的信息。
工作流程图:

准备安装环境
一. LAMP (如果你的LAMP正常工作,那么可跳过这一步)
1. 安装LAMP
# yum install httpd mysql mysql-server php php-mysql
2. 配置Apache
# vim /etc/hosts // 检查主机名
127.0.0.1 localhost.localdomain localhost
# vim /etc/httpd/conf/httpd.conf // 修改配置文件
ServerName localhost:80
3. 启动WWW,测试PHP
# /etc/init.d/httpd start // 立即启动
# /etc/init.d/httpd configtest // 测试设定档语法
# chkconfig httpd on // 设置开机启动
# netstat -tulnp | grep httpd // 查看启动端口
# tail /var/log/httpd/error_log // 查看httpd日志
在浏览器输入: http://你的主机IP 查看Apache页面
# vim /var/www/html/phpinfo.php // 在WWW目录建立PHP文件,添加下面内容,测试PHP
<?php phpinfo (); ?>
在浏览器输入: http://你的主机IP/phpinfo.php 查看PHP信息
4. 配置MYSQL
# /etc/init.d/mysqld start // 启动 mysql
# chkconfig mysqld on // 设置开机启动
# netstat -tulnp | grep mysql // 查看端口情况
# mysqladmin -uroot password '123456' // 给root 设置密码
# mysqladmin --user=root --password reload
# mysql -uroot -p123456 // 进入 mysql
mysql> quit
5. 如果你的PHP无法解析文档,那就重装LAMP吧
卸载软件包: httpd
# rpm -qa | grep httpd //查看httpd相关软件包
httpd-2.2.3-63.el5.centos
# rpm -e httpd-2.2.3-63.el5.centos --nodeps //卸载软件包,--nodeps 如果有连带关系,也强制卸载
# cd /etc/httpd/
# rm -rf * // 删除原有httpd文件
php , mysql 卸载方法同上, 然后新安装LAMP
------------------------------------------ END LAMP ---------------------------------------
二、安装cacti所需环境
1. 安装rrdtool
# yum install rrdtool -y
2. 安装net-snmp
# yum install net-snmp net-snmp-libs net-snmp-utils
# vi /etc/snmp/snmpd.conf // 配置 snmpd.conf
view systemview included .1.3.6.1.2.1.1
改为:
view systemview included .1.3.6.1.2.1
# service snmpd start // 启动 snmpd 服务
# snmpwalk -v 1 -c public localhost .1.3.6.1.2.1.1.1.0 // 测试net-snmp
SNMPv2-MIB::sysDescr.0 = STRING: Linux cronos 2.4.28 #2 SMP ven jan 14 14:12:01 CET 2005 i686
三.安装配置Cacti
1. 获取并解压缩Cacti文件
# cd /tmp
# 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 //将它放到WWW目录并改名
2. 创建Cacti数据库并建立访问帐号
# mysql -uroot -p123456
mysql> create database cacti;
mysql> grant all on cacti.* to root;
mysql> grant all on cacti.* to root@localhost;
mysql> grant all on cacti.* to cactiuser;
mysql> grant all on cacti.* to cactiuser@localhost;
mysql> set password for cactiuser@localhost=password('cactiuser');
mysql> quit
3. 导入Cacti数据库 , 创建用户并赋予权限
# cd /var/www/html/cacti
# mysql -uroot -p123456 cacti < cacti.sql
# useradd cactiuser -d /var/www/html/cacti -s /bin/false
# chown –R cactiuser /var/www/html/cacti/rra /var/www/html/cacti/log
4. 配置cacti数据库连接
# vim /var/www/html/cacti/include/config.php
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "cactiuser";
$database_port = "3306";
# vim /var/www/html/cacti/include/global.php
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "cactiuser";
$database_port = "3306";
5. 修改文件目录属性
chown -R root.root *
6. 建立调度任务
crontab –e
*/5 * * * * php /var/www/html/cacti/poller.php >/dev/null 2>&1
四.初始化
1. 登陆 http://localhost/cacti 访问cacti管理页面
由于开启了SeLinux导致权限问题
You don't have permission to access /cacti on this server.
因此,我们需要关闭 Selinux
1).查看SELinux状态:
# /usr/sbin/sestatus -v // 如果SELinux status参数为enabled即为开启状态
SELinux status: enabled
# getenforce //也可以用这个命令检查
2).关闭SELinux:
a、临时关闭(不用重启机器):
# setenforce 0 // 设置SELinux 成为permissive模式 (关闭SELinux)
# setenforce 1 // 设置SELinux 成为enforcing模式 (开启SELinux)
b、修改配置文件需要重启机器:
# vi /etc/selinux/config
将SELINUX=enforcing 改为SELINUX=disabled
重启机器即可reboot
3). 如果上面方法不行,我们还可以编辑cacti.conf
# vi /etc/httpd/conf.d/cacti.conf // 如果不存在,我们就手工创建一个,并加入下面代码
Alias /cacti "/var/www/html/cacti"
<Location "/cacti">
Order Deny,Allow
# Deny from all
Allow from 127.0.0.1
Allow from ::1
Options Indexes Includes FollowSymLinks
</Location>
# These directories do not require access over HTTP
#
<Directory "/var/www/html/cacti">
AllowOverride Limit
Options FollowSymLinks
</Directory>
2.选择全新安装
3.指定路径
4.默认登陆:用户 admin 密码:admin,强制更该密码
5. 检查相关软件路径
1)Settings—Paths路径
2)Settings—General—Required Tool Versions 选择 rrdtool 1.3.x
然后保存,此时便可以在Graphs 中看到localhost的图标。
到此,cacti安装完毕。
PS: 安装完后,使用的时候又有一堆问题, 直到后来百度了一下,发现了这个东西
CactiEZ:http://www.cngr.cn/dir/216/339/2013012092768.html
转载来源于:http://os.51cto.com/art/201104/252883.htm
转载来源于:http://fmcpu.blog.163.com/blog/static/17603638820137154212424/
CentOS下安装配置Cacti的更多相关文章
- Centos下安装配置LAMP(Linux+Apache+MySQL+PHP)
Centos下安装配置LAMP(Linux+Apache+MySQL+PHP) 关于LAMP的各种知识,还请大家自行百度谷歌,在这里就不详细的介绍了,今天主要是介绍一下在Centos下安装,搭建一 ...
- 阿里云服务器centos下安装配置svn服务器
阿里云服务器centos下安装配置svn服务器 1.安装svn服务器端yum install subversion 从镜像下载安装svn服务器端中间会提示是否ok,输入y,确认安装成功提 ...
- 在CentOS下安装配置MySQL(转)
今天刚把项目做完,需要马上部署到新到的测试服务器上,于是乎,要在服务器上安装环境,由于好久在linux上部署了,手有些生,比较费劲装完,现在把重要步骤贴出,供自己以后参照.1.首先要看看有没有已经安装 ...
- linux、centos下安装配置vim
---恢复内容开始--- 1.一般情况下安装上centos后,会有vi,没有vim(以后可能会有吧) 如果不确定自己有没有vim,使用命令 rpm -qa|grep vim 查看,如果有的话,会显示三 ...
- centos下安装&&配置redis
一.Redis介绍 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多 ...
- CentOS下安装配置Samba服务器
0 环境介绍 VMWARE12下安装的CENTOS7虚拟机.宿主机为WIN7. 1 离线安装 费了九牛二虎之力,下载各种依赖,还是有问题,转向在线安装. 2 在线安装 虚拟机采用默认的配置: 其次,网 ...
- 在centos 下安装配置基于gitosis 的git 服务
前言 这里我用的系统是centos 6.2, 在服务器上的准备工作(服务器IP为10.0.2.8 ): 1.安装 openssh服务器与客户端工具 $ sudo yum install openssh ...
- CentOS下安装配置SVN服务器并自动同步到web目录
一.安装 yum install subversion测试是否安装成功 /usr/bin/svnserve --version如提示以下内容,说明已安装成功 svnserve,版本 1.6.11 (r ...
- Centos下安装配置WordPress与nginx教程
感谢大佬:https://www.howtoing.com/how-to-install-wordpress-with-nginx-on-centos-6-2 WordPress是一个免费和开源网站和 ...
随机推荐
- 结构性产品 Structured Product
定义 结构性产品是固定收益产品(Fixed Income Instruments)的一个特殊种类.它将固定收益产品(通常是定息债券)与金融衍生交易(如远期.期权.掉期等)合二为一,增强产品收益或将投资 ...
- GPS定位
User Location(用户定位): 1.User Location能做什么? 获取用户位置.追踪用户的移动: 2.User Location关键API? Location Manager:用于管 ...
- [PWA] 1. Intro to Service worker
Service worker stays between our browser and noetwork requests. It can help to fetch data from cache ...
- 开源实时视频码流分析软件:VideoEye
本文介绍一个自己做的码流分析软件:VideoEye.为什么要起这个名字呢?感觉这个软件的主要功能就是对"视频"进行"分析".而分析是要用眼睛来看的,因此取了&q ...
- IOS 开发 【os x 使用常识】
开始看<learn Objective-C on the Mac>这本书,很基础,准备快速看完. 刚接触mac 的 os x 系统,很不适应,介绍一点我刚学的基本常识. 1.os x 显示 ...
- 二、T4模板
上文带大家见识了下T4,这里呢开始介绍T4模板有关的内容.关于T4模板介绍和使用网上一搜一箩筐,想深入研究的可以自行去找些资料,这里只介绍接下来我们需要使用的一些知识,不会面面俱到的讲T4模板所有的知 ...
- 关于Jquery.Data()和HTML标签的data-*属性
人们总喜欢往HTML标签上添加自定义属性来存储和操作数据.但这样做的问题是,你不知道将来会不会有其它脚本把你的自定义属性给重置掉,此外,你这样做也会导致html语法上不符合Html规范,以及一些其它副 ...
- xmpp发送文件
xmpp 文件传输协议: XEP-0096: SI File Transfer:文件传输流初始化协议 XEP-0065: SOCKS5 Bytestreams:带外socks5代理字节流传输协议 XE ...
- NSURLConnection下载
@interface AppDelegate () <NSURLConnectionDataDelegate> { NSMutableData *mData;} @end @impl ...
- 防止sql注入 参数化解决方案
StringBuilder strSql=new StringBuilder(); strSql.Append("insert into T_SysLog("); strSql.A ...