阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS下用yum版LNMP搭建Cacti

226次阅读
没有评论

共计 6795 个字符,预计需要花费 17 分钟才能阅读完成。

一、Cacti 的简介

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

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

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

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

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

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

这副图片简述了 cacti 的工作原理.

CentOS 下用 yum 版 LNMP 搭建 Cacti

Cacti 的实例应用

RHEL6.4 中使用 Cacti+Spine 监控主机实现发送邮件报警 http://www.linuxidc.com/Linux/2013-11/92795.htm

RHEL6.4 中使用 Cacti+Spine 监控远程主机 http://www.linuxidc.com/Linux/2013-11/92796.htm

CentOS 5.5 完整安装 Cacti+Spine http://www.linuxidc.com/Linux/2011-12/49701.htm

CentOS 6 下 Cacti 搭建文档 http://www.linuxidc.com/Linux/2013-06/86595.htm

RHEL5.9 下 Cacti 监控部署详解 http://www.linuxidc.com/Linux/2013-06/85427.htm

CentOS 6.3 下 Cacti 安装详解 http://www.linuxidc.com/Linux/2013-05/84279.htm

CentOS Linux 下快速安装配置 Cacti 中文版 http://www.linuxidc.com/Linux/2013-03/81627.htm

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

这些都是在网上找的资料 …….

好了,介绍完了,这回就要开始搭建了:

1. 搭建 lnmp 平台,用 yum,很简单 ……

service snmpd start

service nginx start

service php-fpm start

这些你要保证开机启动,我的 selinux 的关闭的 …….

2. 安装 snmp,使用 SNMP 采集数据

[root@www /]# yum -y install lm_sensors net-snmp net-snmp-utils

3.cacti 又依赖于 rrdtool 生成图表所以首先安装 rrdtool:

[root@www /]# yum -y install cairo-devel glib2-devel pango-devel intltool 安装依赖包

[root@www /]# wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.7.tar.gz

[root@www /]# tar -zxvf rrdtool-1.4.7.tar.gz

[root@www /]# cd rrdtool-1.4.7

[root@www /]# ./configure –prefix=/usr/local && make && make install

4. 进入到数据库创建 cacti 数据和创建一个用户:

create database cactidb default character set utf8;  #创建数据库 grant all on cactidb.* to cactiuser@localhost identified by ‘123456’; # 创建一个 mysql 用户

use cactidb  # 使用刚才创建的数据库

source /usr/local/nginx/html/cacti/cacti.sql # 导入 cacti 数据

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2014-08/105129p2.htm

5. 编辑 cacti 配置文件

[root@www /]# vi /usr/share/nginx/html/cacti/include/config.php

$database_type=”mysql”; # 数据库类型

$database_default=”cactidb”; # 数据库名字

$database_hostname=”localhost”; # 数据库主机

$database_username=”cactiuser”; # 数据库用户

$database_password=”123456″; # 数据库密码

$database_port=”3306″; # 数据库端口

$database_ssl=false;

6. 然后修改 nginx 配置文件像下面:

[root@www cacti]# vi /etc/nginx/conf.d/default.conf

用 yum 装的 lnmp,nginx 配置文件要在这里修改,如果在 nginx.conf 里修改 location,那么 nignx 就会启动失败

location / {
root html;
index index.php;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_buffer_size 8k;
}

注意:这个一定要写对,否则会报 403 的错,要不就是页面过大之类的 ……

 

 

 

然后就是重启 nginx

 

7. 设置时区:

这个如果不设置的话,当你访问 cacti 的时候页面可能全是日志,告诉你时区不对

[root@www cacti]# vi include/global_constants.php

在第二行添加

date_default_timezone_set(“Asia/Chongqing”);

8. 配置 snmp, 编辑 /etc/snmp/snmpd.conf:

vi /etc/snmp/snmpd.conf

然后找到 41 行将 public 改成一个较为复杂的名字:

com2sec notConfigUser default public

然后找到 62 行

access notConfigGroup “” any noauth exact systemview none none

将 systemview 改成 all:

access notConfigGroup “” any noauth exact all none none

然后去掉 85 行的注释:

view all included .1 80

有时候这个也可以注释 …….

保存配置文件后启动 snmp

service snmpd start

9. 计划任务

[root@www cacti]# crontab -u cactiuser -e

*/5 * * * * cactier php /var/www/html/cacti/poller.php > /dev/null &

# 每 5 分钟以 cactier 去抓取数据绘图,这个时间 5 分钟应该是最小间隔了,笔者不建议修改为更小值。

然后就可以访问了:http://192.168.1.31/cacti

Cacti 的详细介绍 :请点这里
Cacti 的下载地址 :请点这里

更多 CentOS 相关信息见 CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14

一、Cacti 的简介

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

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

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

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

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

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

这副图片简述了 cacti 的工作原理.

CentOS 下用 yum 版 LNMP 搭建 Cacti

Cacti 的实例应用

RHEL6.4 中使用 Cacti+Spine 监控主机实现发送邮件报警 http://www.linuxidc.com/Linux/2013-11/92795.htm

RHEL6.4 中使用 Cacti+Spine 监控远程主机 http://www.linuxidc.com/Linux/2013-11/92796.htm

CentOS 5.5 完整安装 Cacti+Spine http://www.linuxidc.com/Linux/2011-12/49701.htm

CentOS 6 下 Cacti 搭建文档 http://www.linuxidc.com/Linux/2013-06/86595.htm

RHEL5.9 下 Cacti 监控部署详解 http://www.linuxidc.com/Linux/2013-06/85427.htm

CentOS 6.3 下 Cacti 安装详解 http://www.linuxidc.com/Linux/2013-05/84279.htm

CentOS Linux 下快速安装配置 Cacti 中文版 http://www.linuxidc.com/Linux/2013-03/81627.htm

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

这些都是在网上找的资料 …….

好了,介绍完了,这回就要开始搭建了:

1. 搭建 lnmp 平台,用 yum,很简单 ……

service snmpd start

service nginx start

service php-fpm start

这些你要保证开机启动,我的 selinux 的关闭的 …….

2. 安装 snmp,使用 SNMP 采集数据

[root@www /]# yum -y install lm_sensors net-snmp net-snmp-utils

3.cacti 又依赖于 rrdtool 生成图表所以首先安装 rrdtool:

[root@www /]# yum -y install cairo-devel glib2-devel pango-devel intltool 安装依赖包

[root@www /]# wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.7.tar.gz

[root@www /]# tar -zxvf rrdtool-1.4.7.tar.gz

[root@www /]# cd rrdtool-1.4.7

[root@www /]# ./configure –prefix=/usr/local && make && make install

4. 进入到数据库创建 cacti 数据和创建一个用户:

create database cactidb default character set utf8;  #创建数据库 grant all on cactidb.* to cactiuser@localhost identified by ‘123456’; # 创建一个 mysql 用户

use cactidb  # 使用刚才创建的数据库

source /usr/local/nginx/html/cacti/cacti.sql # 导入 cacti 数据

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2014-08/105129p2.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计6795字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中