Cacti使用手册0206.docx

上传人:b****5 文档编号:3977699 上传时间:2022-11-26 格式:DOCX 页数:27 大小:995.10KB
下载 相关 举报
Cacti使用手册0206.docx_第1页
第1页 / 共27页
Cacti使用手册0206.docx_第2页
第2页 / 共27页
Cacti使用手册0206.docx_第3页
第3页 / 共27页
Cacti使用手册0206.docx_第4页
第4页 / 共27页
Cacti使用手册0206.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

Cacti使用手册0206.docx

《Cacti使用手册0206.docx》由会员分享,可在线阅读,更多相关《Cacti使用手册0206.docx(27页珍藏版)》请在冰豆网上搜索。

Cacti使用手册0206.docx

Cacti使用手册0206

Cacti使用手册

一、Cacti的架构

二、Cacti的工作流程

三、Cacti简介

1.cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户。

因此,snmp和rrdtool是cacti的关键。

Snmp关系着数据的收集,rrdtool关系着数据存储和图表的生成。

2.Mysql配合PHP程序存储一些变量数据并对变量数据的调用如:

主机名、主机ip、snmp团体名、端口号、模板信息等变量。

3.snmp抓到数据不是存储在mysql中,而是存在rrdtool生成的rrd文件中(在cacti根目录的rra文件夹下)。

另外,当生成图片时对采集的数据的处理方式:

有gauge、counter、derive、absolute。

参考以下例子:

如果輸入資料依序為9810098:

1.GAUGE(個別值,像CPUloading):

產生圖檔時,畫9810098

2.COUNTER(累計值,像流量資料):

產生圖檔時,畫,2-2

3.DERIVE(累計值,像流量資料),小於0畫0:

產生圖檔時,畫20

4.ABSOLUTE如同COUNTER,但COUNTER可能overflow(數值過大),所以會取絕對值

補充說明,COUNTER/DERIVE/AVSOLVTE雖是取差值,但會再除以兩次間隔間的秒數,如上COUNTER例,兩次間隔間為300秒,那畫出來的就是2/300,-2/300的值

数据采集中可以看到定义的是什么数据类型:

Counter和gauge

C:

\usr\bin>snmpget-v2c-cpublic192.168.224.1.1.3.6.1.2.1.6.5.0

TCP-MIB:

:

tcpActiveOpens.0=Counter32:

1927

C:

\usr\bin>snmpget-v2c-cpublic192.168.224.1.1.3.6.1.2.1.6.9.0

TCP-MIB:

:

tcpCurrEstab.0=Gauge32:

0

4.rrdtool对数据的更新和存储就是对rrd文件的处理,rrd文件是大小固定的档案文件(RoundRobinArchive),它能够存储的数据笔数在创建时就已经定义。

[root@localhostrra]#ls220_181_11_156_mem_*

220_181_11_156_mem_buffers_30.rrd220_181_11_156_mem_cache_31.rrd220_181_11_156_mem_free_32.rrd

(可以看出一个图形对应好几个rrd文件---即对应几个数据源---但也可以一个rrd文件包含几个数据源)

下面对单独的rrd文件分析,主要看一下他的结构信息

『提示符』#/usr/local/rrdtool-1.2.11/bin/rrdtoolinfo220_181_11_156_mem_buffers_30.rrd

filename="220_181_11_156_mem_buffers_30.rrd"

rrd_version="0003"

step=300

last_update=1132935300

ds[mem_buffers].type="GAUGE"

ds[mem_buffers].minimal_heartbeat=600

ds[mem_buffers].min=0.0000000000e+00

ds[mem_buffers].max=1.0000000000e+07

ds[mem_buffers].last_ds="UNKN"

ds[mem_buffers].value=0.0000000000e+00

ds[mem_buffers].unknown_sec=0

rra[0].cf="AVERAGE"

rra[0].rows=600

rra[0].pdp_per_row=1

rra[0].xff=5.0000000000e-01

rra[0].cdp_prep[0].value=NaN

rra[0].cdp_prep[0].unknown_datapoints=0

rra[1].cf="AVERAGE"

rra[1].rows=700

rra[1].pdp_per_row=6

rra[1].xff=5.0000000000e-01

rra[1].cdp_prep[0].value=6.1228800000e+05

rra[1].cdp_prep[0].unknown_datapoints=0

rra[2].cf="AVERAGE"

rra[2].rows=775

rra[2].pdp_per_row=24

rra[2].xff=5.0000000000e-01

rra[2].cdp_prep[0].value=6.1228800000e+05

rra[2].cdp_prep[0].unknown_datapoints=0

rra[3].cf="AVERAGE"

rra[3].rows=797

rra[3].pdp_per_row=288

rra[3].xff=5.0000000000e-01

rra[3].cdp_prep[0].value=6.9392640000e+06

rra[3].cdp_prep[0].unknown_datapoints=161

rra[4].cf="MAX"

rra[4].rows=600

rra[4].pdp_per_row=1

rra[4].xff=5.0000000000e-01

rra[4].cdp_prep[0].value=NaN

rra[4].cdp_prep[0].unknown_datapoints=0

rra[5].cf="MAX"

rra[5].rows=700

rra[5].pdp_per_row=6

rra[5].xff=5.0000000000e-01

rra[5].cdp_prep[0].value=2.0409600000e+05

rra[5].cdp_prep[0].unknown_datapoints=0

rra[6].cf="MAX"

rra[6].rows=775

rra[6].pdp_per_row=24

rra[6].xff=5.0000000000e-01

rra[6].cdp_prep[0].value=2.0409600000e+05

rra[6].cdp_prep[0].unknown_datapoints=0

rra[7].cf="MAX"

rra[7].rows=797

rra[7].pdp_per_row=288

rra[7].xff=5.0000000000e-01

rra[7].cdp_prep[0].value=2.0409600000e+05

rra[7].cdp_prep[0].unknown_datapoints=161

5.参考rrdtool语法理解cacti的各个功能与之对于关系:

[root@localhostrrdtool-1.0.50]#./bin/rrdtool

RRDtool1.0.50Copyright1997-2004byTobiasOetiker

Usage:

rrdtool[options]commandcommand_options

Validcommands:

create,update,graph,dump,restore,

last,first,info,fetch,tune,resize,xport

RRDtoolisdistributedundertheTermsoftheGNUGeneral

PublicLicenseVersion2.(www.gnu.org/copyleft/gpl.html)

FormoreinformationreadtheRRDmanpages

[root@localhostrra]#/usr/local/rrdtool-1.2.11/bin/rrdtool--help

RRDtool1.2.11Copyright1997-2005byTobiasOetiker

CompiledSunNov1312:

30:

19CST2005

Usage:

rrdtool[options]commandcommand_options

Validcommands:

create,update,updatev,graph,dump,restore,

last,first,info,fetch,tune,resize,xport

RRDtoolisdistributedundertheTermsoftheGNUGeneral

PublicLicenseVersion2.(www.gnu.org/copyleft/gpl.html)

FormoreinformationreadtheRRDmanpages

四、Cacti的安装

1.安装环境:

redhat9.0

2.安装版本的特别说明

对cacti的pollertype改为了cactid,他是用c语言写程序,目的是为了配合cacti工作,解决poller.php更新、获取数据慢的缺点;具有多进程多线程的特性

安装rrdtool版本是1.2.11,此版本的特点是生成的图像比1.0.50版本更美观

3.安装以下软件包:

httpd-2.0.54.tar.gz

mysql-4.0.18.tar.gz

php-4.4.0.tar.gz

rrdtool-1.2.11.tar.gz

net-snmp-5.2.1.1.tar.gz

cacti-0.8.6f.tar.gz

cacti-cactid-0.8.6f-1.tar.gz

都放到/tools下

A.安装mysql

#groupaddmysql

#useradd-gmysqlmysql

#cd/tools

#tarzxvfmysql-4.0.18.tar.gz

#cdmysql-4.0.18

#./configure--prefix=/usr/local/mysql--with-charset=gbk--with-extra-charsets=all--with-mysqld-user=mysql

#make

#makeinstall

#/usr/local/mysql/bin/mysql_install_db

#echo/usr/local/mysql/lib/mysql>>/etc/ld.so.conf

#su-

#ldconfig

#cd/home/admin/mysql-4.0.18/support-files/

#cpmysql.server/etc/rc.d/init.d/mysql

#chkconfig--addmysql

#chown-Rmysql.mysql/usr/local/mysql/var

#chmod700/usr/local/mysql/var

#/etc/rc.d/init.d/mysqlstart或者/usr/local/mysql/bin/mysqld_safe&

#cp/usr/local/mysql/bin/mysql/usr/local/bin

 

修改mysql的最大连接数

#vimysqld_safe

找到此位置,在--skip-locking与>>之间插入-Omax_connections=1000

iftest-z"$args"

then

$NOHUP_NICENESS$ledir/$MYSQLD$defaults--basedir=$MY_BASEDIR_VERSION--datadir=$DATADIR$USER_OPTION--pid-file=$pid_file--skip-locking-Omax_connections=1000>>$err_log2>&1

else

eval"$NOHUP_NICENESS$ledir/$MYSQLD$defaults--basedir=$MY_BASEDIR_VERSION--datadir=$DATADIR$USER_OPTION--pid-file=$pid_file--skip-locking$args-Omax_connections=1000>>$err_log2>&1"

fi

重起mysql

B.安装apache

#cd/tools/http

#./configurs--prefix=/usr/local/http/

#make

#makeinstall

C.安装php

#cdphp

#./configure--with-mysql--with-apxs2=/usr/local/http/bin/apxs--enable-track-vars--with-zlib-dir=/usr/include--with-gd

#make

#makeinstall

#cpphp.ini-dist/usr/local/lib/php.ini

D.安装rrdtool

http:

//people.ee.ethz.ch/~oetiker/webtools/rrdtool/pub/rrdtool-1.2.11.tar.gz

由于rrdtool1.2.11需要一些库文件支持,故需先安装配置支持的环境,然后编译安装。

直接运行以下sh脚步就可以完成安装:

(注意脚步中的链接是否失效)

#!

/bin/sh

#intalltherrdtool-1.2.11,andasloinstallthesupportlibraries.

######thesourcepage

#http:

//people.ee.ethz.ch/~oetiker/webtools/rrdtool/doc/rrdbuild.en.html

#

####################################################################

BUILD_DIR=/tmp/rrdbuild

INSTALL_DIR=/usr/local/rrdtool-1.2.11

mkdir-p$BUILD_DIR

cd$BUILD_DIR

####################################################################

##########Buildingcgilib

#

cd$BUILD_DIR

wgethttp:

//people.ee.ethz.ch/oetiker/webtools/rrdtool/pub/libs/cgilib-0.5.tar.gz

tarzxfcgilib-0.5.tar.gz

cdcgilib-0.5

makeCC=gccCFLAGS="-O3-fPIC-I."

mkdir-p$BUILD_DIR/lb/include

cp*.h$BUILD_DIR/lb/include

mkdir-p$BUILD_DIR/lb/lib

cplibcgi*$BUILD_DIR/lb/lib

##########Buildingzlib

#

cd$BUILD_DIR

wgethttp:

//people.ee.ethz.ch/oetiker/webtools/rrdtool/pub/libs/zlib-1.2.2.tar.gz

tarzxfzlib-1.2.2.tar.gz

cdzlib-1.2.2

envCFLAGS="-O3-fPIC"./configure--prefix=$BUILD_DIR/lb

make

makeinstall

##########Buildinglibpng

#

cd$BUILD_DIR

wgethttp:

//people.ee.ethz.ch/oetiker/webtools/rrdtool/pub/libs/libpng-1.2.8-config.tar.gz

tarzxvflibpng-1.2.8-config.tar.gz

cdlibpng-1.2.8-config

envCPPFLAGS="-I$BUILD_DIR/lb/include"LDFLAGS="-L$BUILD_DIR/lb/lib"CFLAGS="-O3-fPIC"\

./configure--disable-shared--prefix=$BUILD_DIR/lb

make

makeinstall

##########Buildingfreetype

#

cd$BUILD_DIR

wgethttp:

//people.ee.ethz.ch/oetiker/webtools/rrdtool/pub/libs/freetype-2.1.9.tar.gz

tarzxvffreetype-2.1.9.tar.gz

cdfreetype-2.1.9

envCPPFLAGS="-I$BUILD_DIR/lb/include"LDFLAGS="-L$BUILD_DIR/lb/lib"CFLAGS="-O3-fPIC"\

./configure--disable-shared--prefix=$BUILD_DIR/lb

make

makeinstall

##########Buildinglibart_lgpl

#

cd$BUILD_DIR

wgethttp:

//people.ee.ethz.ch/oetiker/webtools/rrdtool/pub/libs/libart_lgpl-2.3.17.tar.gz

tarzxvflibart_lgpl-2.3.17.tar.gz

cdlibart_lgpl-2.3.17

envCFLAGS="-O3-fPIC"./configure--disable-shared--prefix=$BUILD_DIR/lb

make

makeinstall

######################################################################

#

#ENDENDENDENDENDENDENDENDENDENDENDENDENDENDENDENDENDENDEND

#

IR=-I$BUILD_DIR/lb/include

CPPFLAGS="$IR$IR/libart-2.0$IR/freetype2$IR/libpng"

LDFLAGS="-L$BUILD_DIR/lb/lib"

CFLAGS=-O3

exportCPPFLAGSLDFLAGSCFLAGS

######################################################################

#startinstalltherrdtool-1.2.11

cd$BUILD_DIR

wgethttp:

//people.ee.ethz.ch/oetiker/webtools/rrdtool/pub/rrdtool-1.2.11.tar.gz

tarzxfrrdtool-1.2.11.tar.gz

cdrrdtool-1.2.11

./configure--prefix=$INSTALL_DIR--disable-python--disable-tcl

make

makeinstall

 

E.安装net-snmp

Unix系统安装的都是net-snmp或ucd-snmp(其实两个都是同一组人写的)。

如果没有安装snmp,可以到net-snmp.sourceforge.org上下载源码编译安装。

我这里说的安装SNMP服务并不是要求安装SNMPD,其实是Cacti需要用到net-snmp中的两个命令――snmpwalk和snmpget进行数据的采集。

我们可以直接在系统中运行snmpwalk和snmpget看是否有该命令,如果有则不用安装了。

#tarzxfnet-snmp-5.2.1.1.tar.gz

#cdnet-snmp-5.2.1.2

#./configure--prefix=/usr/local/net-snmp--enable-developer

#make

#makeinstall

F.安装cacti

#cpcacti-0.8.6f.tar.gz/usr/local/http/htdocs/

#cd/usr/local/http/htdocs/

#tarzxvfcacti-0.8.6f.tar.gz

#mvcacti-0.8.6fcacti

G.安装cacti-cactid

CACTID的安装需要以下支持:

∙net-snmp-devel(需要编译安装net-snmp时添加--enable-developer选项)

∙mysql

∙mysql-devel(mysql源文件编译安装后默认支持)

∙openssl-devel(redhat9.0默认安装)

因此需要检查是否具备安装的环境。

#tarzxfcacti-cactid-0.8.6f-1.tar.gz

#cdcactid0.8.6-f1

#./configure;make

这是此目录下你将看到cactid和cactid.conf

#mkdir/usr/local/cactid

#cpcactidcactid.conf/usr/local/cactid

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

当前位置:首页 > 小学教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1