centos5.5快速安装cacti0.8.7g

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:

一、cacti的简介

    网络管理(如主机负载、网络流量等的监控)是系统管理岗工作人员日常工作的一个重要组成部分,许多厂商为此提供了各自的解决方案。早期开源网管软件中比较著名的其中之一的MRTG,是一款使用perl开发的,通过SNMP协议实现管理工作站与设备代理进程间的通讯,以完成对设备的管理和运行状态的监视。MRTG安装配置简单、图形界面直观,因为广受当时网络管理人员的喜爱,也为笔者早期的网络管理工作立下了汗马功劳。

但MRTG也有许多固有的缺点,如:使用文本式的数据库,数据不能重复使用;只能按日、周、月、年来查看数据;每图只能画两个DS(一条线、一个块);每取一次数据即需要绘图一次,浪费系统资源;同时,它也没有提供管理功能。

有鉴于此,MRTG的作者后来另外又开发了一个工具,即rrdtool。rrdtool是一个性能优良的数据记录器,同时也是一个功能强大的绘图引擎。它使用rrd的数据存储格式,使用得数据可以重复使用;在绘图方面,它可以定义任意时间段进行绘图,能绘出多个DS。但它也有自己的缺点:虽然提供了强大的数据存储及绘图功能,但rrdtool却没有提供类似于MRTG中集成的数据采集功能;同时,它提供了过多的参数,以至于在命令行界面使用起来极为不便;此外,rrdtool也没有提供管理功能。于是cacti应运而生。


简单来说,Cacti就是rrdtool的一个forefront,它内置了快速的获数据取工具、优秀的绘图模板以及许多设计精良的数据获取脚本,从而可以通过结合rrdtool强大的数据抓取、数据存储和绘图功能,轻松实现主机负载、网络流量等信息的走势图的绘制.

cacti是用php语言实现的一个软件,它的运行需要网站服务器(如apache)及PHP环境的支持。同时,cacti还需要Mysql配合PHP程序存储一些变量数据并对变量数据进行调用,如:主机名、主机ip、snmp团体名、端口号、模板信息等变量。

rrdtool的对主机负载、网络流量等信息的统计需要通过SNMP协议实现。经过SNMP抓取到的数据存储于由rrdtool生成的rrd文件中,这些文件通常位于cacti的rra目录中。rrdtool对数据的更新和存储就是对rrd文件的处理,rrd文件是大小固定的归档文件(Round Robin Archive),它能够存储的数据笔数在创建时就已经定义。
这副图片简述了cacti的工作原理.

 
Cacti的实例应用 
1)网络设置
2)主机系统
(1)网络接口流量(进与出的带宽)
(2)监控CPU的负载、内存等等
(3)监控磁盘的空间、进程数等等
.........................................等等
3)cacti常见的监测对象
(1)服务器资源:CPU、内存、磁盘、进程、连接数等
(2)服务器类型:WEB、Mail、FTP、数据库、中间件
(3)网络接口:流量、转发速度、丢包率
(4)网络设备性能、配置文件(对比与备份)、路由数
(5)安全设备性能、连接数、攻击数
(6)设备运行状态:风扇、电源、温度
(7)机房运行环境:电流、电压、温湿度

centos5.5安装cacti-0.8.7g为了方便自己写了一个脚本来安装
#!/bin/sh
yum  -y install httpd php php-mysql mysql mysql-server php-snmp 
chkconfig mysqld on  
chkconfig httpd on
chkconfig snmpd on
service mysqld start
mysqladmin -uroot password '123456'
tar -zxvf cacti0.8.tar.gz 
cp -rf cacti /usr/local/
cp -rf httpd.conf /etc/httpd/conf
cp -rf snmpd.conf /etc/snmp
service httpd start
service snmpd start
useradd cactier
passwd cactier
chown -R cactier /usr/local/cacti
chown  cactier.cactier /usr/local/cacti/* 
chmod 755 -R /usr/local/cacti
service mysqld restart
mysql -uroot -p123456 -e "create database cactidb;" 
mysql -uroot -p123456 -e "GRANT ALL PRIVILEGES ON cactidb.* TO 'cactier'@'127.0.0.1' IDENTIFIED BY '123456';"
mysql -uroot -p123456 -e "GRANT all privileges ON cactidb.* TO cactier@localhost IDENTIFIED BY '123456';"
mysql -uroot -p123456 cactidb   <  /root/cacti/cactidb.sql  
yum -y install net-snmp net-snmp-libs  net-snmp-utils  net-snmp-devel  libart_lgpl  net-snmp-perl
rpm -ivh rrdtool-1.2.19-1.el5.kb.i386.rpm
rpm -ivh rrdtool-devel-1.2.19-1.el5.kb.i386.rpm
rpm -ivh rrdtool-php-1.2.19-1.el5.kb.i386.rpm
rm -rf cacti
rm -rf mysql
php /usr/local/cacti/poller.php
cp -rf crontab/* /var/spool/cron

安装好之后就可以用web来访问如图所示:

说明:

 1.mysql密码为123456
cactier用户密码自定义

2.cacti 路径为/usr/local/cacti
配置文件在/usr/local/cacti/include/config.php中
3.web访问为ip
用户名admin 密码默认为123456

客户端安装net-snmp软件一共5个,可以用yum安装,或者用sh clientinstall.sh前提chmod 777 clientinstall.sh
里面默认ip为127.0.0.1修改为cacti服务器的ip地址,服务端也最好修改ip为服务器的ip地址,最好不要用127.0.0.1

5.cacti_host_template__linux_host_ucdnet-snmp.xml为模板文件可以进入web界面导入即可。

6.里面有添加了一台sambaser服务器,客户端安装client 之后http://ip 进入之后把ip修改为监控的ip即可。

 遇到的问题:

1.rrdtool图片显示不了,因为服务端的snmpd.conf没有配置正确所有获取不到localhost的图片

2.刚开始没有刷新php /usr/local/cacti/poller.php所以就没有看到图形

3.添加了主机可惜是unknow状态,因为cacti server  snmpd.conf文件里我写的是127.0.0.1所以客户机获取不到所以提示为unknow状态并不是up状态。

4.还有权限问题和属于主组的问题。

5.还有就是rrdtool的问题,版本问题,所以不能显示。

6.snmpwalk -v 2c -c public localhost总是Timeout No Response from localhost



本文转自zh888 51CTO博客,原文链接:http://blog.51cto.com/zh888/738274,如需转载请自行联系原作者


相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
9天前
|
Linux 数据库管理 Python
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
74 4
|
4天前
|
Linux 网络安全
centOS7.3 安装启用 iptables 记录
centOS7.3 安装启用 iptables 记录
10 1
|
5天前
|
Oracle 关系型数据库 MySQL
centos6安装mariadb失败及解决办法
centos6安装mariadb失败及解决办法
22 4
|
3天前
|
Docker 容器
CentOS7.3 安装 docker
CentOS7.3 安装 docker
17 0
|
4天前
|
NoSQL Linux 网络安全
基于 centOS7 的 redis 安装
基于 centOS7 的 redis 安装
26 1
|
4天前
|
关系型数据库 MySQL Linux
CentOS7.9 安装 mysql-8.0.36 踩坑小记
CentOS7.9 安装 mysql-8.0.36排错指南
140 1
|
10天前
|
tengine Linux 应用服务中间件
CentOS 7 安装 Tengine
CentOS 7 安装 Tengine
|
12天前
|
Ubuntu Java Linux
Linux centos7 ubuntu 一键安装Java JDK 脚本 shell 脚本
Linux centos7 ubuntu 一键安装Java JDK 脚本 shell 脚本
|
12天前
|
Ubuntu 应用服务中间件 Linux
Linux Centos7 ubuntu 安装nginx,脚本一键安装nginx
Linux Centos7 ubuntu 安装nginx,脚本一键安装nginx
|
13天前
|
关系型数据库 MySQL Linux
centos linux mysql 5.5脚本全自动源码包 编译安装
centos linux mysql 5.5脚本全自动源码包 编译安装