cacti是一套基于php、mysql、snmp以及rrdtool开发的系统监控图形分析工具,它通过snmp来获取数据,使用rrdtool绘画图形而且完全可以不需要了解rrdtool复杂的命令参数,它提供了非常强大的数据和用户管理界面,可以指定每一个用户能查看树状结构以及主机的任何一张图,还可以与LDAP结合进行用户认证,同时也能添加自定义的监控模版,监控windows操作系统,功能强大,界面友好,现如今cacti应用相当广泛,比如一些门户网站、IDC数据中心,像北京铜牛信息数据中心、中国联通数据中心均已经使用cacti作为网络流量监控系统,当然我的公司也正在使用cacti完成部分监控角色,特整理一下与大家分享!

安装apache

tar xzvf httpd-2.2.24.tar.gz
cd httpd-2.2.24
./configure --prefix=/usr/local/apache --enable-so
make && make install
/usr/local/apache/bin/apachectl start
echo "/usr/local/apache/bin/apachectl start" >> /etc/rc.local

安装mysql

tar xzvf mysql-5.1.65.tar.gz
cd mysql-5.1.65
./configure --prefix=/usr/local/mysql --with-extra-charsets=gbk,gb2312,utf8
make && make install
cd /usr/src/mysql-5.1.65/
cp support-files/my-medium.cnf /etc/my.cnf
./scripts/mysql_install_db --user=mysql
mkdir -p /usr/local/mysql/data
chown -R mysql.mysql /usr/local/mysql/data
chown -R root.mysql /usr/local/mysql
/usr/local/mysql/bin/mysqld_safe --user=mysql &
/usr/local/mysql/bin/mysqladmin -uroot password 123456
echo "/usr/local/mysql/bin/mysqld_safe --user=mysql &" >> /etc/rc.local

安装php

yum install libpng libpng-devel libjpeg libjpeg-devel freetype freetype-devel gd gd-devel
tar xzvf php-5.4.11.tar.gz
cd php-5.4.11
./configure --prefix=/usr/local/php  --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql -with-gd --with-freetype-dir --with-jpeg-dir --with-png-dir --enable-sockets
make && make install
ln -s /usr/local/php/bin/* /usr/local/bin
cp php.ini-dist /usr/local/php/lib/php.ini

编辑httpd.conf在配置文件中加入以下内容

修改DirectoryIndex内容

使用php探针测试

cd /usr/local/apache/htdocs/
cat test.php
<?php
phpinfo();
?>

安装rrdtool

yum install cairo-devel libxml2-devel pango pango-devel
tar xzvf rrdtool-1.4.6.tar.gz
cd rrdtool-1.4.6
./configure --prefix=/usr/local/rrdtool
make && make install
ln -s /usr/local/rrdtool/bin/* /usr/local/bin/

安装net-snmp

tar xzvf net-snmp-5.4.4.tar.gz
cd net-snmp-5.4.4
./configure --prefix=/usr/local/net-snmp
make && make install
cp EXAMPLE.conf /usr/local/net-snmp/share/snmp/snmpd.conf
ln -s /usr/local/net-snmp/bin/* /usr/local/bin/
/usr/local/net-snmp/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf
echo "/usr/local/net-snmp/sbin/snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf" >> /etc/rc.local

安装cacti

tar xzvf cacti-0.8.8.tar.gz
mv cacti-0.8.8/*  /usr/local/apache/htdocs/
mysql -uroot -p123456
mysql>create database cacti;
mysql>insert into mysql.user (host,user,password) values('localhost','cacti',password('cacti123'));
mysql>flush privileges;
mysql>grant all on cacti.* tocacti@'localhost' identified by 'cacti123';
cd /usr/local/apache/htdocs/
mysql -uroot -pcacti123 cacti < cacti.sql

viminclude/config.php

修改完网站配置文件后打开浏览器,然后访问http://192.168.56.128/install/,如果以上操作全部正确会显示以下页面,如果有错误请根据实际情况修改(一般为路径问题,在这个页面上将程序路径重新指定即可)

点击NEXT

点击NEXT

点击Finish

默认用户名和密码均为admin,第一次登录强制要求修改密码

为监控对象生成数据文件

/usr/local/php/bin/php /usr/local/apache/htdocs/poller.php

rra目录用来存放cacti监控对象生成的监控对象文件

设置cacti数据采集轮询时间加入到计划任务里

crontab-e加入以下内容,让cacti每五分钟采集一次数据

*/5 * * * *  /usr/local/bin/php /usr/local/apache/htdocs/poller.php >/dev/null 2>&1

这样我们就可以通过cacti添加模版,监控nginx服务器资源了

查看监控nginx服务器的负载

监控nginx服务器的网卡流量

增加被监控主机

编辑/etc/snmp/snmpd.conf

#将下边这行中的default
com2secnotConfigUser default public
#改为192.168.112.130(cacti)服务器的地址)
com2secnotConfigUser 192.168.112.130 public
#将下边这行中的systemview
access notConfigGroup "" any noauth exact systemview none none
#改为all
access notConfigGroup "" any noauth exact all none none
#将下边这行的注释“#”号去掉
#view all included .1 80
#将下边这行中的default
com2secnotConfigUser default public
#改为192.168.112.130(cacti)服务器的地址)
com2secnotConfigUser 192.168.112.130 public
#将下边这行中的systemview
access notConfigGroup "" any noauth exact systemview none none
#改为all
access notConfigGroup "" any noauth exact all none none
#将下边这行的注释“#”号去掉
#view all included .1 80

重启snmp服务

serivce snmpd restart

在监控端执行命令检查是否可以抓取数据

snmpwalk -c public -v 2c 192.168.56.129

说明snmpd是正确的,如果不能返回数据,那么可以检查iptables和selinux

页面上创建新的主机

填写被监控主机的相关信息

修改模版配置

如果出现SNMPERROR说明snmp配置错误或者防火墙端口没有开放

最后用graphtree可以看到被监控主机puppetclient已经添加进来,可以完成正常的监控了

puppetclient主机的网络流量

puppetclient主机的内存使用率

转载于:https://blog.51cto.com/laoxu/1214697

RHEL5.9下cacti监控的部署详解相关推荐

  1. window下键盘监控api函数详解

    在实际应用中,键盘监控是一种很常见的技术,它包括按键的记录.按键的过滤.按键的修改(映射)等.比方说,我们想统计用户的击键情况,这个就是按键的记录:我们想屏蔽某些系统键(例如Alt键.Win键),这个 ...

  2. java vm 远程监控配置文件_Java VisualVM监控远程JVM(详解)

    我们经常需要对我们的开发的软件做各种测试, 软件对系统资源的使用情况更是不可少, 目前有多个监控工具, 相比JProfiler对系统资源尤其是内存的消耗是非常庞大,JDK1.6开始自带的VisualV ...

  3. 9.proc目录下的文件和目录详解

    1./proc目录下的文件和目录详解 /proc:虚拟目录.是内存的映射,内核和进程的虚拟文件系统目录,每个进程会生成1个pid,而每个进程都有1个目录. /proc/Version:内核版本 /pr ...

  4. Zabbix监控Jenkins过程详解

    这篇文章主要介绍了基于zabbix实现监控Jenkins的过程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值. 一.监控架构图 二.实现思路 在 Jenkins 上安装 ...

  5. 一篇运维老司机的大数据平台监控宝典(1)-联通大数据集群平台监控体系进程详解

    一篇运维老司机的大数据平台监控宝典(1)-联通大数据集群平台监控体系进程详解 "如果你是一个经验丰富的运维开发人员,那么你一定知道ganglia.nagios.zabbix.elastics ...

  6. kafka安装部署详解

    kafka安装部署详解 1. zookeeper安装部署 1.1 zookeeper下载 1.2 zookeeper配置启动 1.3 zookeeper验证 2. kafka安装部署 2.1 kafk ...

  7. Linux下sysstat安装使用图文详解

    文章目录 Linux下sysstat安装使用图文详解 1.iostat 2.mpstat 3.sadc 4.sadf 5.sar 6.pidstat Linux下sysstat安装使用图文详解 Sys ...

  8. Postgresql -XL 10r.1.1安装部署详解(跳过N多坑)

    Postgresql -XL 10r.1.1安装部署详解(跳过N多坑) 目前安装postgre10r1.1的文档较少,本人目前是在三台虚拟机上搭建的postgre xl 10r1.1集群,之后将pos ...

  9. Linux系统与网络、磁盘参数和日志监控等命令详解二

    创作人QQ:851301776,邮箱:lfr890207@163.com, 欢迎大家一起技术交流,本博客主要是自己学习的心得体会,只为每天进步一点点! 个人座右铭: 1.没有横空出世,只要厚积一定发. ...

最新文章

  1. 网站关键词优化的五大侧重点!
  2. C# Process执行bat
  3. Razor语法(一)
  4. android 利用eclipse观察内存变化情况
  5. MYSQL 实时升级
  6. 当心在Lib中定义非const全局变量
  7. php读取移动硬盘数据,移动硬盘打不开,数据怎么恢复?
  8. 关于新的描述语言GEZEL的介绍
  9. ELK开机自启动脚本
  10. mysql 占用的解决_解决 MySQL 突然占用全部内存的问题
  11. linux的基本使用方法,Linux/Unix基本使用方法
  12. 第二次作业+105032014037
  13. java程序打包exe
  14. 关于Python中的classmethod
  15. C#如何连接带密码的access数据库?
  16. 软件测试的四个阶段【单元测试、集成测试、系统测试、验证测试】
  17. flash倒计时功能
  18. 实现IDM高速下载磁力链接,bt种子,解决百度云、迅雷下载限速
  19. 四川2021年高考成绩位次查询,2021年填报志愿数据:四川所有本科大学近三年分数线、对应位次排行榜...
  20. 向量正交 与 函数正交

热门文章

  1. matlab考试,MATLAB考试题
  2. java break(),Java BreakIterator last()用法及代码示例
  3. 手机写python爬虫_零基础开始写Python爬虫心得
  4. kettle创建mysql资源库时报错_kettle 创建数据库资源库
  5. php弹窗24小时一次,JS利用cookies设置每隔24小时弹出框
  6. 20190912:(leetcode习题)3的幂
  7. 20190824:(leetcode习题)报数
  8. pcl点云库python实现_如何有效地将ROS PointCloud2转换为pcl点云并在python中将其可视化...
  9. 给mysql 授权 命令_mysql中授权命令grant用法详解:
  10. VB:设定 MsgBox 在若干时间之后若无回应则自动关闭