CentOS 6.3 运维监控之Cacti 详细安装(一)

本文涉及的产品
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS Agent(兼容OpenClaw),2核4GB
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
简介:
一、准备安装
环境:CentOS 6.3_x64bit
安装:Minimal(最小)
注意:修改时区和时间
 
所需的软件:
http  php   php-mysql   php-snmp   mysql   perl-DBD-mysql   php-pdo  rrdtool  net-snmp net-snmp-libs  net-snmp-utils
 
下载所需的软件:
cacti-0.8.7g.tar.gz                 
cacti-plugin-0.8.7g-PA-v2.8.tar.gz
rrdtool-1.4.4-1.el5.wrl.i386.rpm  
rrdtool-perl-1.4.4-1.el5.wrl.i386.rpm                  
rrdtool-ruby-1.4.4-1.el5.wrl.i386.rpm         
monitor-latest.tgz
settings-latest.tgz                       
thold-latest.tgz
 
二、环境介绍
主监控服务器:Centos 6.3_x64bit
主监控IP地址:10.10.10.100
监控客户端:10.10.10.101
  
 
三、安装配置
(1)在主监控服务器上安装apache+php+gd的web环境,推荐编译安装。(可以用yum安装)
[root@server~]#yum install php php-mysql php-snmp mysql mysql-server net-snmp net-snmp-libs net-snmp-utils php-pdo perl-DBD-MySQL
(2)在主监控服务器上安装rrdtool,rrdtool依赖的包过多,所以选择增加源,然后用yum安装。
安装有三种方式: 
[root@server ~]#yum localinstall *.rpm –nogpgcheck 或 [root@server ~]#yum localinstall –y –nogpgcheck * 或[root@server ~]# yum install rrdtool* -y
 
(3)配置snmp
[root@server ~]#vim /etc/snmp/snmpd.conf
 
#将下边这行中的default 
com2sec notConfigUser  default       public
#改为:127.0.0.1
com2sec notConfigUser  127.0.0.1       public
#将下边这行中的systemview
access  notConfigGroup ""      any       noauth    exact  systemview none none
#改为:all
access  notConfigGroup ""      any       noauth    exact  all none none
#将下边这行的注释“#”去掉
view all    included  .1          80
 
重启snmpd服务
[root@server ~]# service snmpd restart
停止 snmpd:                                               [确定]
正在启动 snmpd:                                           [确定]
[root@server ~]# chkconfig snmpd on
 
(4)安装cacti
[root@server ~]#cd /var/www/html
[root@server html]# mkdir cacti
[root@server html]# ll
总用量 4
drwxr-xr-x. 12 root root 4096 9月   7 15:50 cacti 
 
[root@server ~]# tra xvf cacti-0.8.7g.tar.gz 
[root@server ~]# mv cacti-0.8.7g/* /var/www/html/cacti
 
[root@server ~]# useradd cacti 
[root@server ~]# chown -R cacti /var/www/html/cacti/
[root@server ~]# chmod -R 775 /var/www/html/cacti/
[root@server html]# ll
总用量 4
drwxrwxr-x. 12 cacti root 4096 9月   7 15:55 cacti
 
(5)在数据库中建库、授权、导入数据库结构
#注意导入cacti.sql时该文件的路径
[root@server ~]# cd /var/www/html/cacti/
[root@server cacti]# service mysqld restart 
                                                           [确定]
正在启动 mysqld:                                          [确定]
[root@server cacti]#chkconifg mysqld on
[root@server cacti]#mysql 
mysql> create database cacti;
mysql> grant all privileges on cacti.* to cacti@localhost identified by 'cacti' with grant option;
mysql> grant all privileges on cacti.* to cacti@127.0.0.1 identified by 'cacti' with grant option;
myslq> use cacti;     //提示“Database changed”即可
myslq> source /var/www/html/cacti/cacti.sql;
mysql> \q
#配置cacti以连接数据库
[root@server cacti]#vim /var/www/html/cacti/include/config.php
修改如下:
/* make sure these values refect your actual database/host/user/password */
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";     
$database_password = "cacti";
$database_port = "3306";
 
[root@server cacti]#service httpd restart 
[root@server cacti]#chkconfig httpd on
 
关闭防火墙有2种:
○1[root@server ~]# chkconfig iptables off     //关闭防火墙,重启后生效。
○2[root@server ~]#iptables –F              //即时生效,不需要重启
SELINUX关闭有2种 :
○1[root@server ~]# vim /etc/selinux/config
修改如下:
SELINUX=enforcing             //修改为:SELINUX=disabled
重启: 
[root@server ~]# reboot          //重启后永久生效
○2[root@server ~]# setenforce 0     //临时关闭,即时生效
 
注意:#setenforce 0 如果不关闭会出现很多问题,如访问不了,没有权限等游览器
 
(6)浏览器下配置
#用浏览器打开 :http://服务器IP/cacti ; 会显示cacti的这指南,设置好就不会再提示。
#点“Next”
#选择“New Install”,点击“Next”
#指定 rrdtool  php  snmp  工具的Binary文件路径,确保所有的路径都是显示“FOUND”,没有“NOT FOUND”的,点击Finish 完成安装。
#Cacti 默认的用户名与密码是:admin,输入用户名与密码,点击:login
#为了安全的原因,第一次登录成功后,Cacti会强制要求更改新password,输入新密码并确认密码,点击“save”,进入cacti控制台界面;
#点击“graphs”,查看Cacti监控本机的图表。
 
(7)Cacti监控Linux客户端
在被监控的Linux客户端上安装net-snmp
[root@client ~]#yum install net-snmp
配置编辑:
[root@client ~]#vim /etc/snmp/snmpd.conf
#更改以下部分:
#将下边这行中的default 
com2sec notConfigUser  default       public
改为:10.10.10.100(服务器IP地址)
com2sec notConfigUser  10.10.10.100       public
将下边这行中的systemview
access  notConfigGroup ""      any       noauth    exact  systemview none none
改为:all
access  notConfigGroup ""      any       noauth    exact  all none none
将下边这行的注释“#”去掉
view all    included  .1          80
 
#重启snmpd服务
[root@client ~]#service snmpd restart
[root@client ~]# chkconfig snmpd on
 
 
(8)选择console——Devices——Add填入一下内容,这是要监控的客户端,编辑以下几点:
    Description: CentOS 6.3 Client
Hostname:10.10.10.101
Host Template: Local Linux Machine
Downed Device Detection:SNMP
SNMP Version: Version 2
“Create”-----*Create Graphs for this ----右边全部“勾”选 ,“Create”,“Create”,“Create”,完成!
Graph Trees-----Default Tree-----Add:
Parent Item:root
Tree Item Type:Host
Host: CentOS 6.3 Client(10.10.10.101)
“Create”,“Save”,完成!
 
(9)增加入一个计划,使Cacti每5分钟生成一个监控图表。
[root@server cacti]#crontab -e   或crontab –u cacti –e 
加入以下内容,注意:poller.php 的路径
*/5 * * * * php /var/www/html/cacti/poller.php > /dev/null 2>&1
#确保 /var/www/html/cacti/rra/目录存在;
#如果暂时未看到图表,可以手工执行,生存图表
[root@server cacti]# cd ..
[root@server html]# php /var/www/html/cacti/poller.php > /dev/null 2>&1
 
四、cacti常用插件安装
1.在安装别的插件前,先要安装Cacti的一个patch--Plugin Architecture,才能支持插件PA 2.8  =  cacti 0.8.7g
[root@server ~]# yum install patch -y
[root@server ~]#tar xvf cacti-plugin-0.8.7g-PA-v2.8.tar.gz
[root@server ~]#cp -R cacti-plugin-arch/* /var/www/html/cacti/
 cp:是否覆盖"/var/www/html/cacti/LICENSE"? y
cp:是否覆盖"/var/www/html/cacti/README"? y
[root@server ~]#cd /var/www/html/cacti
[root@server cacti]# mysql -ucacti -pcacti cacti <pa.sql  
[root@server cacti]# patch -p1 -N<cacti-plugin-0.8.7g-PA-v2.8.diff
[root@server cacti]# vim include/config.php
修改为:$url_path = "/cacti/";
 :wq    //保存
 
2.安装常用插件
Monitor   Settings   thold
拓朴图             报警
 
[root@server ~]#tar zxvf monitor-latest.tgz
[root@server ~]#tar zxvf settings-latest.tgz
[root@server ~]#tar zxvf thold-latest.tgz
[root@server ~]#mv monitor-0.9 /var/www/html/cacti/plugins/monitor
[root@server ~]#mv settings-0.6 /var/www/html/cacti/plugins/settings
[root@server ~]#mv thold-0.41 /var/www/html/cacti/plugins/thold
登录cacti-----console
安装启用对应的插件即可。
这里以monitor为例:选择user Management -----admin ------plugin management(打上钩),-----Save;
 
plugin management----- Actions 安装
 
五、常见故障排除
[root@server ~]# tail /var/log/httpd/error_log    //查看日志
[root@server ~]# tail /var/log/messages         //查看日志
 
1.安装完毕在浏览器上无法看到数据的png图片。请查看apache的log  
如果出现:
[Thu Feb 09 15:12:24 2006] [error] [client 127.0.0.1] File does not exist:/var/www/html/favicon.ico 
ERROR: opening '/var/www/html/cacti/rra/localhost_mem_buffers_3.rrd': Permission denied(没有权限)  
PS:解决方法:关闭selinux,即可解决问题。 
注意:无法获取数据图大多和poller.php,cmd.php权限有关。
 
2.当cacti 有图没有数据时,而且状态为nan的错误 
PS:这个很可能是snmp的问题,执行以下命令,没有得到如图的结果。就说明snmp不支持64位MIB库。请重新编译安装snmp。 
 
[root@server ~]# snmpwalk -c public -v 2c 127.0.0.1 IF-MIB::ifHCInOctets 
IF-MIB::ifHCInOctets.1 = Counter64: 2105
IF-MIB::ifHCInOctets.2 = Counter64: 1810779 
 
3.如果出现问题请注意一下snmp协议的版本,被监控主机无法获得snmp信息,还有可能是对方主机snmp版本和当前主机的snmp版本不一致导致的。都用version 1是一种解决方法 
如果都用version 1,需要把所有监控机和被监控机的snmpd.conf改一下 
#vi /etc/snmp/snmpd.conf 
将下边这行 
view systemview included .1.3.6.1.2.1.1 
改为: 
view systemview included .1.3.6.1.2.1 
PS:rrdtools版本要一致,特别是在升级cacti时候。版本不一致,可能rra数据格式不同。
就无法处理。
 
排错方法以及思路:
1.查看log下的日志文件。一般那里会有提示; 
2.测试SNMP是不是工作正常 #snmpwalk -v 2c -c public hostIP  如果正常的话会出现一些数据。不正常会出现一些错误,也会有对应的错误提示;  
3.自动运行poller.php没有,有没有加入cacti的的用户,有没有给cacti用户写入rra/ log/的权限;
4.#crontab -u cactiuser -e 为cactiuser加上自动运行poller.php的任务: 
*/5 * * * * root /usr/local/bin/php /usr/local/share/cacti/poller.php /dev/null 2>&1 
5.把cacti目录里的cmd.php和poller.php文件加下运行的权限; 


本文转自 yhw85 51CTO博客,原文链接:http://blog.51cto.com/yanghuawu/984793,如需转载请自行联系原作者
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
10月前
|
存储 Ubuntu Linux
VMware-安装CentOS系统教程及安装包
虚拟机相当于是一个独立于你电脑的环境,在这个环境上面,你可以安装Linux、Windows、Ubuntu等各个类型各个版本的系统,在这个系统里面你不用担心有病读等,不用担心文件误删导致系统崩溃。 虚拟机也和正常的电脑系统是一样的,也可以开关机,不用的时候,你关机就可以了,也不会占用你的系统资源,使用起来还是比较方便 这里也有已经做好的CentOS 7系统,下载下来解压后直接用VMware打开就可以使用
1548 69
|
9月前
|
存储 分布式计算 Linux
安装篇--CentOS 7 虚拟机安装
VMware 装 CentOS 7 不知道从哪下手?这篇超详细图文教程手把手教你在 VMware Workstation 中完成 CentOS 7 桌面系统的完整安装流程。从 ISO 镜像下载、虚拟机配置,到安装图形界面、设置用户密码,每一步都有截图讲解,适合零基础新手快速上手。装好之后无论你是要搭 Hadoop 集群,还是练 Linux ,这个环境都够你折腾一整天!
3753 3
|
10月前
|
Ubuntu Linux 索引
Centos 7、Debian及Ubuntu系统中安装和验证tree命令的指南。
通过上述步骤,我们可以在CentOS 7、Debian和Ubuntu系统中安装并验证 `tree`命令。在命令行界面中执行安装命令,然后通过版本检查确认安装成功。这保证了在多个平台上 `tree`命令的一致性和可用性,使得用户无论在哪种Linux发行版上都能使用此工具浏览目录结构。
863 78
|
11月前
|
Linux 网络安全 Apache
针对在Centos/Linux安装Apache过程中出现的常见问题集锦
以上每个问题的解决方案应深入分析错误日志、系统消息和各种配置文件,以找到根本原因并加以解决。务必保持系统和Apache软件包更新到最新版本,以修复已知的bugs和安全漏洞。安装和管理Web服务器是一项需要细致关注和不断学习的任务。随着技术的发展,推荐定期查看官方文档和社区论坛,以保持知识的更新。
404 80
|
9月前
|
安全 关系型数据库 MySQL
CentOS 7 yum 安装 MySQL教程
在CentOS 7上安装MySQL 8,其实流程很清晰。首先通过官方Yum仓库来安装服务,然后启动并设为开机自启。最重要的环节是首次安全设置:需要先从日志里找到临时密码来登录,再修改成你自己的密码,并为远程连接创建用户和授权。最后,也别忘了在服务器防火墙上放行3306端口,这样远程才能连上。
2157 16
|
10月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
731 10
|
11月前
|
人工智能 数据挖掘 Linux
Centos安装Python3.7(亲测可用)
本指南详细介绍了在基于Linux(以CentOS系统为例,使用yum包管理器)的系统上安装Python 3.7版本的完整流程。Python是一种广泛使用的高级编程语言,在各种领域如软件开发、数据分析、人工智能和区块链开发等都有着重要的应用。
869 2
|
10月前
|
运维 网络协议 Linux
CentOS下Bind服务的安装与故障排查
通过以上的步骤,您应该能够在CentOS系统上安装并配置BIND DNS服务,并进行基本的故障排查。
764 0
|
10月前
|
存储 Ubuntu Linux
安卓手机免root安装各种Linux系统:Ubuntu, Centos,Kali等
此外还可以安装Slackware、Archstrike等系统,还可以通过github查找方法安装更多有趣的东西。 昨日小编就是通过Termux安装的Kali Linux工具包。