搭建
Cacti是一套基于PHP,Mysql,SNMP及RRDTool开发的网络流量检测图形分析工具,cacti是通过snmpget来获取数据,使用RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数,它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、host以及任何一张图,还可以与LDAP结合进行用户验证,同事也能自己增加模版,功能非常强大完善。界面友好。
Mysql配合php程序存储一些变量数据并对变量数据进行调用,如:主机名、主机IP、snmp团体名、端口号、模版信息等变量
Snmp抓到的数据不是存储在mysql中,而是存在rrdtool生成rrd文件中。
Cacti架构:
Cacti工作流程
搭建实验环境:
系统环境:Centos 5.4(64位) 软件包:mysql-5.5.17-linux2.6-x86_64.tar.gz、httpd-2.2.9.tar.gz、php-5.3.9.tar.gz、zlib-1.2.3.tar.gz、freetype-2.3.5.tar.gz、libpng-1.2.18.tar.gz、jpegsrc.v7.tar.gz、fontconfig-2.4.2.tar.gz、gd-2.0.28.tar.gz、libxml2-2.6.32.tar.gz、rrdtool-1.2.27.tar.gz 仙人掌:cacti-0.8.7i.tar.gz |
环境搭建:
一、mysql安装
mysql官方网站:
首先先检测下自己的系统是否存在mysql,一般机器会默认安装,如果有请删除,从新安装或者升级。
查看系统中是否有存在数据库
# rpm -qa | grep mysql 查看系统中是否有安装mysql Mysql-5.0.77-3.el5 显示内容
|
卸载系统中的数据库
Centos卸载自带的mysql命令 # yum remove mysql 小红帽卸载mysql #rpm –e mysql |
安装mysql
再官网下载最新的mysql源码包,这里我下载的mysql-5.5.17-linux2.6-x86_64.tar.gz # tar -zxvf mysql-5.5.17-linux2.6-x86_64.tar.gz 解压 # mv mysql-5.5.17-linux2.6-x86_64 /usr/local/mysql 移动到/usr/local下,并重命名 # groupadd mysql 新建mysql组 # useradd -g mysql mysql 建立mysql用户并加入mysql组 # 拷贝配置文件到/etc下,并重命名 # vi /etc/my.cnf 修改my.cnf配置文件 [mysqld] my.cnf中mysqld的模块 datadir = /usr/local/mysql/data 添加此条命令 # scripts/mysql_install_db --user=mysql 使用mysql用户初始化数据库 # chown -R root . 设置当前路径下文件属主为root 设置当前路径下文件属主为mysql # chgrp -R mysql . 设置当前路径下文件属组为mysql # bin/mysqld_safe --user=root & 启动mysql,没有error,数据库就安装成功了。 # cp support-files/mysql.server /etc/init.d/mysqld 复制服务器启动脚本 # chkconfig --add mysqld 设置为系统服务 # chkconfig mysqld on 设置为自动启动 # vi /etc/profile 增加环境变量 PATH=$PATH:/usr/local/mysql/bin 增加环境变量内容 # . /etc/profile 重读下配置文件 ------------------------------------------------mysql安装完成----------------------------------------------------- |
二、安装apache
Apache官方网站:http://www.apache.org
# tar -zxvf httpd-2.2.9.tar.gz 解压源码包 # ./configure --prefix=/usr/local/apache \ > --enable-so \ > --enable-rewrite 编译前配置 # make 编译 # make install 安装 # vi /etc/rc.d/rc.local 加入开机启动 /usr/local/apache/bin/apachectl start 文件内添加 -----------------------------------------------apache安装完成---------------------------------------------------- |
先安装zlib,freetype,libpng,jpeg以便于让php支持GD库(Cacti的WeatherMap插件必须要较新的GD库支持) 库文件小矮子地址: |
安装组件(zlib,freetype,libpng,jpge)
zlib-1.2.3.tar.gz
# tar -zxvf zlib-1.2.3.tar.gz 解压zlib # ./configure --prefix=/usr/local/zlib 编译前配置 # make 编译 # make install 安装
libpng-1.2.18.tar.gz
# tar -zxvf libpng-1.2.18.tar.gz 解压libpng # ./configure --prefix=/usr/local/libpng 编译前配置 编译 # make install 安装
freetype-2.3.5.tar.gz
# tar -zxvf freetype-2.3.5.tar.gz 解压 # ./configure --prefix=/usr/local/freetype 编译前配置 编译 # make install 安装
jpegsrc.v7.tar.gz
# tar -zxvf jpegsrc.v7.tar.gz 解压 # mkdir /usr/local/libjpeg 创建目录 # mkdir /usr/local/libjpeg/bin # mkdir /usr/local/libjpeg/lib # mkdir /usr/local/libjpeg/man # mkdir /usr/local/libjpeg/man/man1 # ./configure --prefix=/usr/local/libjpeg/ --enable-shared --enable-static 编译前配置 编译 # make install 安装
fontconfig-2.4.2.tar.gz
# tar -zxvf 解压 # ./configure --with-freetype-config=/usr/local/freetype/bin/freetype-config \ > --with-expat-lib=/usr/lib64/ 编译前配置 # make 编译 # make install 安装
libxml2-2.6.32.tar.gz
# tar -zxvf libxml2-2.6.32.tar.gz # ./configure 编译前配置 编译 # make install 安装
------------------------------------------组件安装完成------------------------------------------------------------- |
安装GD库
# tar -zxvf gd-2.0.28.tar.gz 解压 # ./configure --with-png=/usr/local/libpng/ --with-freetype=/usr/local/freetype/ --with-jpeg=/usr/local/libjpeg/ --with-fontconfig=/usr/local/fontconfig/ # make 编译 # make install 安装
|
安装PHP
官方网站:
PHP # tar -zxvf php-5.3.9.tar.gz 解压 # ./configure --prefix=/usr/local/php \ 安装到路径 > --with-apxs2=/usr/local/apache/bin/apxs \ 支持apache模块 > --with-mysql=/usr/local/mysql/ \ 支持mysql > --enable-gd-native-ttf \ 激活对本地TrueType字符串函数的支持 > --enable-gd-jis-conv \ 使JIS-mapped可用,支持日文字体 > --with-freetype-dir=/usr/local/freetype/ \ 激活对FreeType2.x的支持 > --with-jpeg-dir=/usr/local/libjpeg/ \ 激活对jpeg的支持 > --with-png-dir=/usr/ \ 激活对png的支持 > --enable-xml \ 支持XMl > --enable-mbstring \ 激活mbstring模块 > --enable-sockets \ 支持套接字层 # make 编译 # make install 安装 -----------------------------------------------------PHP安装完成-------------------------------------------------- |
PHP配置
Php配置: # cp php.ini-development /usr/local/php/php.ini 建立php配置文件 # ln -s /usr/local/php/bin/* /usr/local/bin/ 做软连接 # vi /usr/local/apache/conf/httpd.conf 配置php和apache协同工作 LoadModule php5_module modules/libphp5.so 修改此行 AddType application/x-httpd-php .php 添加此行 AddType application/x-icon .ico 添加此行 DirectoryIndex index.html index.php 修改此行 |
测试php解析环境
# vi /usr/local/apache/htdocs/test.php 新建一个文件 <?php phpinfo(); ?> 文件内容 使用浏览器浏览
|
由于字数的限制,其余的安装步骤再一篇文章中、请点击查看。