Cacti网络流量监测图形分析器安装架设指南通常,监控类项目所使用的网络设备、安全设备、流量控制设备相对繁多,监控和管理起来也相对繁琐,如果未能及时对性能、流量、存活状态等指标进行监控,当设备出现故障后,问题设备不能及时被发现,从而导致监控中断,小则会造成数据中断,如果问题严重,可能会因为设备的无法使用而失去某一时刻重要信息的获取。因此,监控类项目一定要使用监控软件,方便监控运维,提高工作效率,从而达到事半功倍的效果。综上所述,今天我为大家推荐一款优秀的检测分析工具——Cacti(我不是搞推销的^_^~)。Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具,通过snmpget来获取数据,使用RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善。界面友好。cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户。因此,snmp和rrdtool是cacti的关键。Snmp关系着数据的收集,rrdtool关系着数据存储和图表的生成。废话不多说,开始Cacti的旅行吧~~先简单介绍一下我的服务器:HP台式机、双核CPU、1G内存、硬盘250G。操作系统采用RedHatEnterpriseLinuxServerrelease5.3内核2.6.18-128.el5安装定制包时,如果对所需文件库和编译器不熟悉的话,除了kde桌面和服务器应用程序外,尽量完全安装。安装前最好能确定glibc为2.5版本以上,否则安装cairo、libxml2、pango库是比较麻烦,如果有yum就另当别论了。顺便说一下,下面所提供的代码均可以在linux中复制使用,若你不想对安装路径进行自定义,就尽情的按步骤复制吧~~!!。1、安装MySQL#tarzxfmysql-5.0.21.tar.gz#cdmysql-5.0.21#./configure--prefix=/usr/local/mysql--sysconfdir=/etc--localstatedir=/var/lib/mysql/#前面的直接复制,可以无视这么长的空格。说明:#prefix=/usr/local/mysqlmysql安装的目标目录#sysconfdir=/etcmy.ini配置文件的路径#localstatedir=/var/lib/mysql数据库存放的路径#make#编译#makeinstall#编译安装#groupaddmysql#创建mysql组#useraddmysql-gmysql#创建mysql用户,并加入mysql组#cpsupport-files/my-medium.cnf/etc/my.cnf#拷贝mysql-5.0.21文件夹内的my-medium.cnf文件到/etc下并改名为my.cnf#询问你是否要覆盖时,输入y#/usr/local/mysql/bin/mysql_install_db--user=mysql#使用mysql初始化数据库#cd/usr/local/mysql#chown-Rroot.#设定root能访问/usr/local/mysql#chown-Rmysql/var/lib/mysql#设定mysql用户能够访问/var/lib/mysql#chgrp-Rmysql/usr/local/mysql#设定mysql组能访问/usr/local/mysql#/usr/local/mysql/bin/mysqld_safe--user=mysql启动mysql#PATH=$PATH:/usr/local/mysql/bin#将目录加入PATH,让系统找到mysql#exportPATH#导入PATH变量#echo”/usr/local/mysql/lib/mysql”/etc/ld.so.conf#将程序路径写入ld.so.conf#ldconfig–v#刷新动态链接库#echo”/usr/local/mysql/bin/mysqld_safe--user=mysql&”/etc/rc.d/rc.local#加入开机启动#/usr/local/mysql/bin/mysqladmin-urootpasswordBJCA_@_2012#修改root密码Mysql安装完成!2、安装Apache#tarzxfhttpd-2.0.59.tar.gz#cdhttpd-2.0.59#./configure--prefix=/usr/local/apache--enable-so--enable-rewrite--enable-mods-shared=most同上,无视这么大的空格,直接复制。说明:--enable-so选项:让Apache可以支持DSO模式,注意,这里采用的是Apache2.0的语法。如果你的Apache是1.3版本,应改为--enable-module=so。--enable-mods-shared=most选项:告诉编译器将所有标准模块都编译为DSO模块。你要是用的是Apache1.3,改为--enable-shared=max就可以。--enable-rewrite选项:支持地址重写功能,使用1.3版本的朋友请将它改为--enable-module=rewrite。#make#makeinstall#vi/usr/local/apache/conf/httpd.conf#启动Apache中的php选项,找到下面两行DirectoryIndexindex.php#修改默认启动页DocumentRoot#指定主目录(/usr/local/apache/htdocs)ServerName10.154.0.197#制定服务器名称找到AddType字样,在其后添加解析,为Apahce添加PHP支持,加入:AddTypeapplication/x-httpd-php.php.phtmlAddTypeapplication/x-httpd-php-source.phps#/usr/local/apache/bin/apachectlstart#启动Apache服务#echo”/usr/local/apache/bin/apachectlstart”/etc/rc.d/rc.local#加入开机启动注意:php安装完后会自动在httpd.conf加上下面一行(若无,请手动添加):LoadModulephp5_modulemodules/libphp5.so^_^一般没问题。Apache安装很简单,下面安装PHP。3、安装PHP#tarzxvfphp-5.2.10.tar.gz#cdphp-5.2.10#./configure--with-apxs2=/usr/local/apache/bin/apxs--disable-debug--enable-safe-mode--enable-trans-sid--enable-sockets--with-xml--with-mysql=/usr/local/mysql--enable-short-tags--with-gd--with-zlib--with-jpeg--with-png--enable-memory-limit--disable-posix--with-config-file-path=/usr/local/lib#以上编译命令,如果你觉得这样不直观,可以复制到记事本中查看。说明:?--with-apxs2=/usr/local/apache/bin/apxs\这是加入apache中为DSO模块的位置?--disable-debug\#关闭php内部调试?--enable-safe-mode\#打开php的安全模式?--enable-sockets\#支持sockets模块?--enable-trans-sid\?--with-xml\#支持xml?--with-mysql\#支持mysql?--enable-short-tags\#支持PHP的短标记?--with-gd\#支持GD库?--with-zlib\#支持zlib?--with-jpeg\?--with-png\?--enable-memory-limit\?--disable-posix\?--with-config-file-path=/usr/local/lib#make#makeinstall#cpphp.ini-dist/usr/local/lib/php.ini复制php的配置文件OK,PHP也安装完成,下面测试PHP程序可以被解析。首先找到apache的htodcs,按照上面的安装路径为:/usr/local/apache/htdocs,在此文件中创建info.php文件,具体如下。#vi/usr/local/apache/htdocs/info.php加入以下内容:?Phpinfo();?保存后,在浏览器中输入出现以下界面证明Apache解析PHP成功。是不是很有成就感呢?接下来我们开始安装Cacti所需要的组件。真正的旅行才刚刚开始~~4、安装rrdtoolRrdtool安装需要cairo、libxml2、pango库文件支持,所以我们先使用yum安装这几个库文件,如果不能上互联网或者不会使用yum,那就找我要吧,因为我就不能上互联网。#yuminstallcairo-devellibxml2-develpangopango-deve#有yum的执行这行,没有yum的跳过这行。#tarzxvfrrdtool-1.4.4.tar.gz#cdrrdtool-1.4.4#./configure--prefix=/usr/local/rrdtool#设置安装目录为/usr/local/rrdtool#make#makeinstall#ln-s/usr/local/rrdtool/bin/*/usr/local/bin/#链接rrdtool/bin下的所有文件到/usr/local/bin/5、安装net-snmp#tarzxvfnet-snmp-5.4.3.tar.gz#cdnet-snmp-5.4.3#./configure--prefix=/usr/local/net-snmp#make#makeinstall#cpEXAMPLE.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//启动net-snmp#echo“/usr/local/net-snmp/sbin/snmpd-c/usr/local/net-snmp/share/snmp/snmpd.conf”/etc/rc.local//加入开机启动6、安装Cacti#tarzxvfcacti-0.8.7g.tar.gz#mvcacti-0.8.7g/*/usr/local/apache/htdocs/#将Cacti源码移动到htdocs#mysql-uroot–pBJCA_@_2011#进入数据库注意:创建数据库时请注意字符集,如果是中文Cacti,创建数据库时需设置字符编码为utf8;不然会乱码,如果是英文版,创建数据库即可,标红的命令二选一。#mysqlcreatedatabasecacti;#创建cacti数据库(英文)#mysqlcreatedatabasec