使用cacti+集中式监控服务器及网络设备.docx

上传人:b****2 文档编号:677836 上传时间:2023-04-29 格式:DOCX 页数:22 大小:1.66MB
下载 相关 举报
使用cacti+集中式监控服务器及网络设备.docx_第1页
第1页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第2页
第2页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第3页
第3页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第4页
第4页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第5页
第5页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第6页
第6页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第7页
第7页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第8页
第8页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第9页
第9页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第10页
第10页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第11页
第11页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第12页
第12页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第13页
第13页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第14页
第14页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第15页
第15页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第16页
第16页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第17页
第17页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第18页
第18页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第19页
第19页 / 共22页
使用cacti+集中式监控服务器及网络设备.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

使用cacti+集中式监控服务器及网络设备.docx

《使用cacti+集中式监控服务器及网络设备.docx》由会员分享,可在线阅读,更多相关《使用cacti+集中式监控服务器及网络设备.docx(22页珍藏版)》请在冰点文库上搜索。

使用cacti+集中式监控服务器及网络设备.docx

使用cacti+集中式监控服务器及网络设备

使用cacti集中式监控服务器及网络设备。

Date:

March3,2009

TypeofSubmission:

Title:

使用cacti批量监控服务器以及其PHP运作环境配置。

Subtitle:

Keywords:

cactiphpsnmpRRDtool

Prefix:

无需填写

Given:

范绰耘

Middle:

Family:

Suffix:

无需填写

JobTitle:

系统管理员

Email:

qbanke@

Bio:

服务器软硬件技术架构、开源软件的热衷者,现任职广州华腾信息科技有限公司系统管理员,您可以通过开源中国社区网站来联系我。

Company:

广州华腾信息科技有限公司

Photofilename:

Abstract:

本文主要介绍说明用于支持Cacti运作的PHP+RRDtool环境的详细配置方法。

使其能集中式监控多台,不同平台类型的服务器。

以及支持SNMP网络设备运作状态。

前言

Cacti功能类似于我们所熟悉的MRTG。

MRTG确实是非常好的老牌系统监控工具,但由于他历史实在很久了,使得许多功能以及配置等方面都比较落后。

实现得比较费劲,管理起来很麻烦。

比如我有几百个被监测点,分布在不同的机房,而且我需要将这些服务器和网络设备分类,这样的话我就要将这些被监测点放在不同的mrtg配置文件中,运行多个crontab,而且还要自己写了一些html页面对其进行管理。

Cacti其实是一套php程序,一个rrdtool工具。

它运用snmpget采集数据,使用rrdtool绘图。

界面非常漂亮,它提供了强大的数据管理和用户管理功能,一张图是属于一个host的,每一个host又可以挂载到一个树状的结构上。

用户的管理上,作为一个开源软件,它做到为指定一个用户能查看的“树”、host、甚至每一张图,还可以与LDAP结合进行用户的验证。

Cacti还提供自己增加模板的功能,让你添加自己的snmp_query和script。

功能相当强大!

本文前半部分是教程,主要介绍了Cacti以及其PHP运行环境的安装配置。

后半部分将实际举例如何使用Cacti监控诸如Linux,Windows。

以及支持SNMP管理协议的路由器等网络设备。

环境搭建

Cacit运行环境需要PHP+Mysql+rrdtool以及snmp工具的支持。

下边是本次配置需要用到的软件。

Catci:

1.cacti-0.8.6j.tar.gz

2.rrdtool-1.2.27.tar

3.net-snmp-5.0.9-2.30E.15

4.net-snmp-devel-5.0.9-2.30E.15

5.net-snmp-libs-5.0.9-2.30E.15

6.net-snmp-utils-5.0.9-2.30E.15 

PHP:

1.php-5.2.6.tar.gz

2.curl-7.15.0.tar.gz

3.freetype-2.1.9.tar.gz

4.gettext-0.16.1.tar.gz

5.gd-2.0.35.tar.gz

6.jpegsrc.v6b.tar.gz

7.libart_lgpl-2.3.17.tar.gz

8.libpng-1.2.18.tar.gz

9.libxml2-2.6.32.tar.gz

10.ZendOptimizer-3.3.0a-linux-glibc21-i386.tar.gz

11.zlib-1.2.3.tar.gz

12.libxml2-2.6.32.tar.gz

Apache:

httpd-2.2.6.tar.gz

Mysql:

mysql-5.1.24-rc.tar.gz

开始构建完整的PHP运行的环境,我们以全新安装的RedHatAs4updata4操作系统环境为例。

首先编译安装Apachehttpdserver

1.#tarzxvfhttpd-2.2.6.tar.gz

2.#cdhttpd-2.2.6

3.#./configure--prefix=/usr/local/apache26--enable-module=so--with-mpm=worker--enable-module=rewrite

4.#make&&makeinstall

第二步安装PHP+GD等所需的支持插件

编译安装libxml

1.#tarzxvflibxml2-2.6.32.tar.gz

2.#cdlibxml2-2.6.32.tar.gz

3.#./configure--prefix=/usr/local/libxml2/

4.#make&&makeinstall

编译安装zlib

1.#tarzxvfzlib-1.2.3.tar.gz

2.#cdzlib-1.2.3

3.#./configure--prefix=/usr/local/zlib2/

4.#make&&makeinstall

编译安装jpeg支持

1.#tar-zxfjpegsrc.v6b.tar.gz

2.#cdjpeg-6b/

3.#./configure--prefix=/usr/local/jpeg6

4.#make

5.#makeinstall-lib

6.#makeinstall

(该版本的jpeg在实际安装过程中,makeinstall的时候会出现好几个找不到目录,或目录不存在的error。

只需按照提示人手创建缺失目录,然后再令其makeinstall直到无任何错误提示且顺利完成为止。

编译安装libpng

1.#tarzxvflibpng-1.2.18.tar.gz

2.#cdlibpng-1.2.18.tar.gz

3.#cpscripts/makefile.gcmmxmakefile

4.#./configure--disable-shared--prefix=/usr/local/libpng2/

5.#make&&makeinstall

编译安装freetype

1.#tarzxvffreetype-2.1.9.tar.gz

2.#cdfreetype-2.1.9

3.#./configure--disable-shared--prefix=/usr/local/freetype2/

4.#make&&makeinstall

编译安装libart_lgpl

1.#tarzxvflibart_lgpl-2.3.17.tar.gz

2.#cdibart_lgpl-2.3.17

3.#./configure--disable-shared--prefix=/usr/local/libart/

4.#make&&makeinstall

编译安装gettext

1.#tarzxvfgettext-0.16.1.tar.gz

2.#cdgettext-0.16.1

3.#./configure--prefix=/usr/local/gettext/

4.#make&&makeinstall

编译安装gd库:

1.#tarzxvfgd-2.0.35.tar.gz

2.#cdgd-2.0.35

3.#./configure--prefix=/usr/local/gd2--with-zlib=/usr/local/zlib2/--with-png=/usr/local/libpng2/--with-jpeg=/usr/local/jpeg6/--with-freetype=/usr/local/freetype2/--with-libart=/usr/local/libart/--with-gettext=/usr/local/gettext/--with-libxml=/usr/local/libxml2

4.#make&&makeinstall

编译安装Curl支持

1.#tarzxvfcurl-7.15.0.tar.gz

2.#cdcurl-7.15.0

3.#./configure--prefix=/usr/local/curl

4.#make&&makeinstall

编译安装PHP

1.#tarzxvfphp-5.2.6.tar.gz

2.#cdphp-5.2.6

3.#./configure--prefix=/usr/local/php--with-apxs2=/usr/local/apache26/bin/apxs--with-jpeg-dir=/usr/local/jpeg6/--with-png-dir=/usr/local/libpng2/--with-gd=/usr/local/gd2/--with-freetype-dir=/usr/local/freetype2/--with-zlib-dir=/usr/local/zlib2/--with-mysql=/usr/local/mysql--with-curl=/usr/local/curl--with-gettext=/usr/local/gettext

4.#make&&makeinstall

5.#cpphp.ini-dist/usr/local/php/lib/php.ini(拷贝PHP配置文件至安装目录)

6.#vi/usr/local/apach26/conf/httpd.conf(修改apache配置文件并加载PHP支持)

 

要改的有如下几处

1.一般都在

#AddTypeapplication/x-tar.tgz

下加一行

2.#LoadModulephp5_modulemodules/libphp5.so

AddTypeapplication/x-httpd-php.php

如果你搜索其它地方没有以下这行

LoadModulephp5_modulemodules/libphp5.so

请把上面的#号去掉

还有找到

DirectoryIndexindex.htmlindex.html.var

在后面加index.php让它把index.php做为默认页

3.保存httpd.conf文件.

启动apache

#/usr/local/apache2/bin/apachectlstart

如果没有出错,写一个测试页放到你网页目录下.访问就应该可以看到php的版本等信息了!

用ZendOptimizer加速PHP

1.#tarzxvfZendOptimizer-2.5.3-linux-glibc21-i386.tar.gz

2.#cdZendOptimizer-2.5.3-linux-glibc21-i386

3.#./install.sh

安装的时候注意输入正确的安装apache的路径等内容!

安装完毕,再看看phpinfo页面的zend选项就发现了!

!

 

安装MYSQL

1.# groupadd mysql

2.# useradd -g mysql mysql

3.#tarzxvfmysql-5.1.24-rc.tar.gz

4.#cdmysql-5.1.24-rc

5.#./configure--prefix=/usr/local/mysql

6.--localstatedir=/data/mysql(指定数据文件目录)--without-innodb--without-debug--with-extra-charsets=gbk--with-extra-charsets=all--enable-assembler--with-pthread

7.--enable-thread-safe-client--with-client-ldflags=-all-static

8.#make&&makeinstall

9.#cp ./support-files/mysql.server /etc/init.d/mysql(复制Mysql启动服务至系统)

10.#chmod777/etc/init.d/mysql(赐予可执行权限)

11.#chownmysql:

mysql/data/mysql(设置数据文件目录属性)

设置数据文件目录属性这一步相当重要,许多朋友第一次使用tar包安装Mysql的时候就因该目录权限问题导致Mysql无法启动。

相当头大.

1.#/usr/local/mysql/bin/mysql_install_db (初始化数据库)

2.#servicemysqlstart(启动Mysql)

3.#/usr/local/mysql/bin/mysqladmin-uroot-ppassword'xxxxx'(设置管理员密码xxx默认值为空)

好了,至此mysql安装完毕.

这样构建Cacit运行的PHP+Mysql环境就基本上完成了。

下边开始安装Cacit所需要的rrdtools图形工具以及snmp工具

编译安装rrdtools

1.#tarzxvfrrdtool-1.2.27.tar

2.#cdrrdtool-1.2.27

3.#./configure--prefix=/usr/local/rrdtool

4.#make&&makeinstall

如果./configure时出现下面这个错误

configure:

error:

Pleasefixthelibraryissueslistedaboveandtryagain.

表明系统有功能缺失,需安装libart_lgpl-devel.rpm这个包

如果还是提示听样的错误,有可能是找不到FreeType

把/usr/local/freetype2/lib/pkgconfig下的.pc文件拷贝到/usr/lib/pkgconfig下即可

如果makeinstall时出现[tclrrd.o]错误

就安装tcl-8.4.7-2.i386.rpm以及tcl-devel-8.4.7-2.i386.rpm这2个包

安装net-snmp、snmpwalk和snmpget命令

# rpm -qa | grep net-snmp(查看系统中有否已经装有所需的软件)

net-snmp-5.0.9-2.30E.15

net-snmp-devel-5.0.9-2.30E.15

net-snmp-libs-5.0.9-2.30E.15

net-snmp-utils-5.0.9-2.30E.15 

没有或者缺少的话都需要逐一安装上。

而且还很有可能会因rpm的依存关系无法顺利安装,须使用--nodeps参数。

以上所需的rpm安装包都能在RedHatAs4安装光盘上找到.

安装配置

至此,Cacti所需的运行环境都已经准备好了,接下来开始进行安装以及配置。

稍微修改系统中snmp的配置

# vi /etc/snmp/snmpd.conf

1.com2sec notConfigUser  default       public

改为:

com2sec notConfigUser   127.0.0.1      public

2.access  notConfigGroup ""  any   noauth    exact  systemview  none none

改为:

access  notConfigGroup ""  any   noauth    exact  all  none none

3.#view all    included  .1         80

将前面的 # 注释 去掉。

保存退出 :

wq

4.重新启动snmp服务

#servicesnmpdrestart

安装/ 配置cacti 

1.#tarzxvfcacti-0.8.6j.tar.gz

2.# mv cacti-0.8.6j /data/web_server/admin/cacti

(把cacit剪切到自定的web目录下)

3.#chmod777–Rf/data/web_server/admin/cacti

(设置目录权限,避免因权限问题而导致目录无法写入)

4.# cd /data/web_server/admin/cacti

在Mysql中创建一个新的库,并导入cacti目录中cacti.sql并设置好该表的用户权限,然后编辑cacti的数据库配置文件。

5.# vi /data/web_server/admin/cacti/include/config.php

$database_type = “mysql”; 

$database_default = “数据库名称”; 

$database_hostname = “默认是localhost”;

$database_username = “用户名”; 

$database_password = “密码”;

更改用户、密码 等项 与上面给出的对应 保存退出

6.# crontab–e(加入自动执行规则,每5分钟执行。

*/5****/usr/local/php/bin/php/data/web_server/admin/cacti/poller.php>/dev/null2>&1

(其中/usr/local/php/bin/php这个为php的安装目录)

7.保存退出:

wq

8.在apache上设置好cacti所在web目录

9.打开浏览器http:

//youhostname/cacti

10.进入cacti的初始设置页面

第一次默认登陆账号:

admin 密码 admin

登陆后它就会让你立即修改新密码

说一下cacti设置页中各项“零件”的路径.

当修改好新密码进入,第一个显示出的页面就是让你设置rrdtool,snmp等工具的路径。

这是个很重要的环节,必须无误,要不然cacti将无法生成出统计图。

snmpwalk Binary Path :

 /usr/bin/snmpwalk

snmpget Binary Path:

 /usr/bin/snmpget

RRDTool Binary Path:

 /usr/local/rrdtool/bin/rrdtool

PHP Binary Path:

 /usr/local/php/bin/php

Cacti Log File Path:

 /data/web_server/admin/cacti/log/cacti.log

Cactid Poller File Path:

 /data/web_server/admin/cacti/poller.php

默认的配置中会出现许多“NotFound”

按照上边的路径把“NotFound”的项都重新填上。

手动运行一次

/usr/local/php/bin/php/data/web_server/admin/cacti/poller.php>/dev/null2>&1

你就能在顶上graphs中localhost里头看到本机的内存,CPU,登陆用户等的统计图.

图1

但默认Cacti是没有创建网卡流量的监控图的。

要我们自己来加。

回到console菜单

选择Devices监控设备。

图2

图3

然后点击右上角的Add进行添加

Description设备名称(可随意输入)

Hostname设备地址(如果是本机就填127.0.0.1)

HostTemplate设备的类型(选择ucd/netSNMPHost)

然后其他按照默认即可,如下图

图4

点greate创建。

如果刚才填写的地址无误,创建成功后,会在该页面左上方出现所新建设备的SNMPInformation

然后点击隔壁醒目的*CreateGraphsforthisHost即开始创建监控图表

图5

图6

如图6,沟选你所要监控的网卡以及IP,点create。

这样就完成了你所指定设备统计图的创建。

图7

点击菜单中的GraphManagement即可浏览到你刚才所创建的图表,如图7箭头所示。

图8

有一个小技巧,初次要求cacti创建指定设备的统计图表,通过GraphManagement进入图8所示页面时,统计表图片会是一个X(叉)。

这是因为在配置初期指定系统中每5分钟执所行的php语句还没到点运作。

要么你就等5分钟,要么你就直接进入系统手动执行:

/usr/local/php/bin/php/data/web_server/admin/cacti/poller.php>/dev/null2>&

然后曲线表中就能出现第一个峰值,每5分钟自动更新。

24小时后,曲线图就能完整地出现在你眼前。

回到图7GraphManagement的界面勾选新建的图表项,然后在下边

Chooseanaction框中选择PlaceonaTree(defaultTree)

就能把该图表类似快捷方式的样子张贴到本文图1所示的Graphs,Defaulttree栏目中。

然而你也能自己在菜单栏的GraphTrees中新建定制栏目,然后用相同的方法把新建的统计图往你所定制的栏目中放。

Cacti的强大功能不单止可以通过snmp获取装有Linux,Unix操作系统服务器的运行状态,还能监控Windows系统服务器。

跟诸如Cisco,Linksys,路由器,交换机,无线AP。

或者其他支持snmp管理协议的网络设备。

实际应用

下边我们举出实应用用的例子。

设备结构:

1.网络入口路由器LinksysRV042。

Linksys的一款路由器,主要负责,外网接入路由,防火墙,以及端口映射。

2.server1WEB应用服务器

操作系统:

LinuxRedHatAs4

Eth0,Eth1双网卡工作。

前者接入路由器映射至外网。

后者直连至server2

进行反向代理(proxy)以及数据备份以及同步等功能。

IP分别为

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2