CentOS中Cacti的安装过程
来源:互联网 发布:java天气预报接口api 编辑:程序博客网 时间:2024/06/05 11:42
内容整理自多篇博客。
CentOS+Cacti 安装过程
##################################################
# Cacti Configuration
# Date:2010-12-09
# Eny:CentOS 5.4
#################################################
所需要安装的软件:
http、php、php-mysql、php-snmp、mysql、perl-DBD-mysql、php-pdo、rrdtool、net-snmp、net-snmp-libs、net-snmp-utils
下载相关软件:
cd /usr/local/src/
wget http://www.cacti.net/downloads/cacti-0.8.7e.tar.gz
安装配置:
Ø 在主监控机上安装apache+php+gd的web环境
yum install phpphp-mysql php-snmp mysql mysql-server net-snmp net-snmp-libs net-snmp-utilsphp-pdo perl-DBD-MySQL
Ø 在主监控机上安装rrdtool,rrdtool依赖的包过多,所以选择增加源,然后用yum安装
#增加源
vim/etc/yum.repos.d/CentOS-Base.repo
#在文件末尾增加以下部分
[dag]
name=Dag RPMRepository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
enabled=1
安装:
yum installrrdtool
Ø 配置snmp
vim/etc/snmp/snmp.conf
#将下边这行中的default
com2secnotConfigUserdefault public
#改为127.0.0.1
com2secnotConfigUser127.0.0.1 public
#将下边这行中的systemview
accessnotConfigGroup "" any noauth exact systemview none none
#改为all
accessnotConfigGroup "" any noauth exact all none none
#将下边这行的注释“#”号去掉
#view allincluded .1 80
#转换成root: su –l root 重启snmpd服务
service snmpdrestart
Ø 安装cacti:
#把解压后的包移动到你的相应的web目录
tar xvf cacti-0.8.7e.tar.gz
mv cacti-0.8.7e /var/www/html/cacti
Ø 在数据库中建库、授权、导入数据库结构
#注意导入cacti.sql时该文件的路径
mysqladmin –uroot password “root”
mysql -p
mysql> createdatabase cacti;
mysql> grant all privileges on *.* to ‘root’@’%’ identified by 'root' withgrant option;
mysql> use cacti;
mysql> source /var/www/html/cacti/cacti.sql;
#配置cacti以连接数据库
vim/var/www/html/cacti/include/config.php
$database_type ="mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "root";
$database_password = "root";
$database_port = "3306";
添加cacti用户
$useraddcacti -d /var/www/html/cacti -s /bin/false
$chown-R cacti /var/www/html/cacti/rra /var/www/html/cacti/log
这个上面可能添加不行试试:
#chown-hR cacti /var/www/html/cacti/rra /var/www/html/cacti/log
Ø 配置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>
重起httpd的服务,让上面的修改生效
# /etc/init.d/httpd restart
Ø 打开下面的url.
http://127.0.0.1/cacti
如果出现 You don’t have permission to access /cacti on this server.
执行:#restorecon –R /var/www/html/
打开网站,点next.选择new install,使用一路回车法.最后完成
最后的用户名为: admin 密码为: admin
Ø 让系统每5分钟收集,需要
crontab –e
*/5 * * * * cacti php/var/www/cacti/poller.php &>/dev/null
也可手工跑一次:/var/www/cacti/poller.php
Ø 图片和数据都没有的解决办法。
(不要使用root用户运行上面的命令,否则要再运行一次chown –R cactiuser rra/ log/)
#snmpwalk -c public -v 2c localhost
#snmpwalk -v 1 -c public localhost IP-MIB::ipAdEntIfIndex
IP-MIB::ipAdEntIfIndex.61.xxx.xxx.xxx = INTEGER: 2
IP-MIB::ipAdEntIfIndex.127.0.0.1 = INTEGER: 1
IP-MIB::ipAdEntIfIndex.172.xxx.xxx.xxx = INTEGER: 3
也可以用snmpd -f -Le 命令查看当前有没有出什么错。
FQA:
1如果磁盘监控不到
请使用Cacti 中自带的模板 ucd/net – Get Monitored Partitions ,然后在被监控的机器的snmpd.conf(/etc/snmp/snmpd.conf)中加入
disk / (比如我们监视根分区)
然后可以用snmpwalk -v 1 -c public 192.168.0.52 dsktable这个命令来检查
2.如果图出不来
1.检查你的主机是不是活的,一定要能测试通过,状态是活的才行,可以用命令来检查是否有输出
2.另外cacti默认选择的rrdtool的版本是RRDTool 1.1.x 的!—-点击Console->System Utilities->Technical Support->RRDTool Version选择RRDTool 1.2.x,不然有可能出不了图.
3.如果想检查生成的RRA文件是否有数据,可以用如下命令:
#rrdtool fetch *.rrd AVERAGE
如果结尾都是nan,那表明没有抓取到数据,例:
# rrdtool fetch ftp_server_proc_1246.rrd AVERAGE | tail
1247535000: nan
1247535300: nan
1247535600: nan
1247535900: nan
1247536200: nan
1247536500: nan
1247536800: nan
1247537100: nan
1247537400: nan
正确应该是
# rrdtool fetch c3750-05_traffic_in_173.rrd AVERAGE |tail
1247536800: 0.0000000000e+00 0.0000000000e+00
1247536860: 0.0000000000e+00 0.0000000000e+00
1247536920: 0.0000000000e+00 0.0000000000e+00
1247536980: 0.0000000000e+00 0.0000000000e+00
1247537040: 0.0000000000e+00 0.0000000000e+00
1247537100: 0.0000000000e+00 0.0000000000e+00
1247537160: 0.0000000000e+00 0.0000000000e+00
1247537220: 0.0000000000e+00 0.0000000000e+00
1247537280: 0.0000000000e+00 0.0000000000e+00
3.网卡流量达到100M以上图像有问题?
这与snmp的版本有关,snmp1的数据是32位而snmp2c以上是64位(AS4默认是不支持64位的)。
1.首先要确定你使用的是snmp2c或以上,是否支持64位MIB库.如下如果返回的有几行含有“Counter64:”的话.那么表明是支持的。
#snmpwalk -c public -v 2c localhost IF-MIB::ifHCInOctets
IF-MIB::ifHCInOctets.1 = Counter64: 3174458
IF-MIB::ifHCInOctets.2 = Counter64: 1585772167
IF-MIB::ifHCInOctets.3 = Counter64: 35696997927
IF-MIB::ifHCInOctets.4 = Counter64: 0
2.然后点击Cacti的页面:“Console ->; Create New Graphs ->;Data Query”。你在下面看到“Select a graph type:”的下拉菜单(默认是“In/Out bits”),要取64bits的数据所以将其改为“In/Out bits(64-bit Counters)”,然后选择你要监测的网卡即可。另外,该监测点的“Maximum Value”必须设置为100M以上。
3.设备管理中,选择的主机中的SNMP版本,一定要是2.
4.RedHat AS4的(net-snmp5.2以下不支持)snmp不支持64位计数器的解决方法
可以下载一个src.rpm再在/usr/src/redhat/SPECS/net-snmp.spec文件的configure下加上一句–enable-mfd-rewrites /
然后再
#cd /usr/src/redhat/
#rpmbuild -bb SPECS/net-snmp.spec
生成一堆的x86_64.rpm在/usr/src/redhat/RPMS/x86_64下,如果是32位的就在i386下.在安装就行了.
注 :64位计数器是在net-snmp 5.2上新加入的IF-MIB ,它可以转换更多的 MIB 对象 (e.g. ifXTable with 64-bit ifHC* counters). 所有象RHEL4,Centosd4上,如果使用默认的5.2的src包,就算加入了enable-mfd-rewrites其实也是不行的.所以要下载 5.2的src包来安装.
下载地址
net-snmp5.2.src.rpm
这个包中默认就加入了enable-mfd-rewrites.下载后,直接用上面方法中的rpmbuild -bb SPECS/net-snmp.spec编译后安装就行.
这个有时还得不到数据,要注意你的snmpd.conf是否配置对了.其中的如下,read选项要是全部.
access notConfigGroup "" any noauth exact all none none
如果不想编译,可以下载在这下载redhat4的rpm直接安装就行了
以上大部分内容来自:http://www.21andy.com/blog/20100204/1615.html
http://aneya.blogbus.com/logs/42240129.html
- CentOS中Cacti的安装过程
- CentOS 5.6下Cacti安装过程详解
- CentOS环境cacti的安装与配置
- Cacti的安装(for CentOS 5.2)
- centos下cacti 的安装配置
- CentOS CACTI,RRDTool安装
- CentOS+Cacti安装配置
- CentOS+Cacti安装配置
- CentOS 安装Cacti
- CentOS下CACTI安装
- CentOS 6.4 Cacti安装
- centos cacti 安装.
- 64位 CentOS 5.6 中 Cacti 0.8.7 i 的编译安装
- CentOS+Cacti+plugin安装配置
- CentOS+Cacti+plugin安装配置
- CentOS 5.5 下开源的系统监控工具 cacti 的安装
- 64位 CentOS 5.6 中 Nagios 3.3.1 的编译安装 并 与Cacti 0.8.7i进行整合
- CACTI的安装
- 学习正则(一)
- Linux程序开发:QT中的多线程编程
- 学习正则(二)
- 学习正则(三)
- 设置MyEclipse编码方式
- CentOS中Cacti的安装过程
- 表变量与临时表使用注意
- swing 反射Annotation方式添加事件Listener
- java中Thread与Runnable的区别
- answer_to_1.17
- Bluetooth stack, ALSA and Skype in Linux system
- 数组操作(字符串)
- Socket实现客户端和服务器端的消息通信
- 使用OpenLayers访问天地图WFS数据