cacti 安装版.docx
《cacti 安装版.docx》由会员分享,可在线阅读,更多相关《cacti 安装版.docx(12页珍藏版)》请在冰豆网上搜索。
cacti安装版
一、Cacti的安装
1.安装环境:
Centos
2.安装Apache、MySQL、PHP
(1).安装MySQL
下载地址:
//查看系统中是否已经安装了MySQL,如果是卸载所有以mysql开头的包。
#rpm–qa|grepmysql
#rpm–emysql-*
//查找/etc/f(MySQL的选项配置文件),如果有请删除它,以免影响新安装版本的启动。
#rm–f/etc/f
#tar–zxvfmysql-standard-5.0.27-linux-i686-glibc23.tar.gz
#cp–rfmysql-standard-5.0.27-linux-i686-glibc23/usr/local/
//建立符号链接,如果以后有新版本的MySQL的话,你可以仅仅将源码解压到新的路径,然后重新做一个符号链接就可以了。
这样非常方便,数据也更加安全。
#ln–smysql-standard-5.0.27-linux-i686-glibc23/usr/local/mysql
//添加用于启动MySQL的用户及用户组(如果以前安装过MySQl,用户及用户组可能已存在)。
#useraddmysql
#groupaddmysql
//初始化授权表
#cd/usr/local/mysql
#scripts/mysql_install_db
//修改MySQl目录的所有权
#cd/usr/local
#chgrp–Rmysqlmysql-standard-5.0.27-linux-i686-glibc23
#chgrp–Rmysqlmysql
#chown–Rmysqlmysql-standard-5.0.27-linux-i686-glibc23/data
#chown–Rmysqlmysql/data
#ln–s/usr/local/mysql/bin/*/usr/local/bin/
//启动Mysql
#bin/safe_mysqld --user=mysql&
//配置系统启动时自动启动MySQl
#cpsupport-files/mysql.server/etc/rc.d/init.d/mysqld
#chkconfig--addmysqld
//修改MySQL的最大连接数
#vi/etc/f
//添加以下行
[mysqld]
set-variable=max_connections=1000
set-variable=max_user_connections=500
set-variable=wait_timeout=200
//max_connections设置最大连接数为1000
//max_user_connections设置每用户最大连接数为500
//wait_timeout表示200秒后将关闭空闲(IDLE)的连接,但是对正在工作的连接不影响。
//保存退出,并重新启动MySQL
//重新启动MySQL后使用下面的命令查看修改是否成功
#mysqladmin-uroot-pvariables
Password:
//可以看到以下项说明修改成功
|max_connections |1000
|max_user_connections |500
|wait_timeout |200
(2).安装Apache
下载地址:
http:
//httpd.apache.org/
#tar–zxvfhttpd-2.2.4.tar.gz
#cdhttpd-2.2.4
#./configure--prefix=/usr/local/apache--enable-so
//编译时加上加载模块参数--enable-so
#make
#makeinstall
#vi/usr/local/apache/conf/httpd.conf
//修改Apache配置文件,添加ServerName (或ServerName本机ip)
#vi/etc/rc.d/rc.local
//在rc.local上加入一行/usr/local/apache/bin/apachectl–kstart,系统启动时启动Apache服务。
3).安装PHP
PHP下载地址:
tar-zxvf php-5.2.3.tar.gz
cdphp-5.2.3
#./configure--prefix=/usr/local/php--with-apxs2=/usr/local/apache/bin/apxs--with-mysql=/usr/local/mysql--with-gd=/usr/local/libgd--enable-gd-native-ttf--with-ttf--enable-gd-jis-conv--with-freetype-dir=/usr/local/freetype--with-jpeg-dir=/usr/local/libjpeg--with-png-dir=/usr--with-zlib-dir=/usr/local/zlib--enable-xml--enable-mbstring--enable-sockets
#make
#makeinstall
#cpphp.ini-recommended/usr/local/php/lib/php.ini
#ln–s/usr/local/php/bin/*/usr/local/bin/
#vi/usr/local/apache/conf/httpd.conf
查找AddTypeapplication/x-compress.Z
AddTypeapplication/x-gzip.gz.tgz
在其下加入AddTypeapplication/x-tar.tgz
AddTypeapplication/x-httpd-php.php
AddTypeimage/x-icon.ico
修改DirectoryIndex行,添加index.php
修改为DirectoryIndexindex.phpindex.htmlindex.html.var
#vi/usr/local/apache/htdocs/test.php
添加以下行:
//php标记(用<代替[)
[?
php
Phpinfo();
?
]
wq保存退出。
#/usr/local/apache/bin/apachectl–kstop
#/usr/local/apache/bin/apachectl–kstart
对php编译选项的解释:
--prefix=/usr/local/php //指定PHP的安装目录
--with-apxs2=/usr/local/apache2/bin/apxs //支持Apache模块
--with-mysql=/usr/local/mysql //支持MySQl
--with-gd=/usr/local/libgd //支持GD库
--enable-gd-native-ttf //激活对本地TrueType字符串函数的支持
--with-ttf //激活对FreeType1.x的支持
--with-freetype-dir=/usr/local/freetype //激活对FreeType2.x的支持
--with-jpeg-dir=/usr/local/libjpeg//激活对jpeg-6b的支持
--with-png-dir=/usr //激活对png的支持
--with-zlib-dir=/usr/local/zlib//激活对zlib的支持
--enable-mbstring //激活mbstring模块
--enable-gd-jis-conv//使JIS-mapped可用,支持日文字体
--with-mail //支持Mail函数
--enable-xml //支持XML
--enable-sockets //支持套接字
1.安装RRDTool
由于rrdtool-1.2.23需要一些库文件支持,故需先安装配置支持的环境,然后编译安装。
直接运行以下bash脚本就可以完成安装:
注意:
将cgilib-0.5.tar.gz、zlib-1.2.3.tar.gz、libpng-1.2.18.tar.gz、freetype-2.3.5.tar.gz、libart_lgpl-2.3.17.tar.gz、rrdtool-1.2.23.tar.gz放到/root/rrdtool-1.2.23目录下,将脚本保存为/root/rrdtool-1.2.23/rrdtoolinstall.sh,并给执行权限chmodu+x/root/rrdtool-1.2.23/rrdtoolinstall.sh。
以下链接是我重新打好的一个rrdtool-1.2.23的安装包,里面包括了所有用到的库文件和安装脚本,下载解压后执行脚本rrdinstall.sh即可以完成RRDTool的安装。
点击下载rrdtool-1.2.23.tar.gz
如果以上脚本安装失败,可以试试以下安装包:
http:
//61.156.20.41/autodownload/rrdtool-1.2.11.tar.gz
#!
/bin/sh
BUILD_DIR=`pwd`
INSTALL_DIR=/usr/local/rrdtool
cd$BUILD_DIR
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
cd$BUILD_DIR
tar zxfzlib-1.2.3.tar.gz
cdzlib-1.2.3
envCFLAGS="-O3-fPIC"./configure--prefix=$BUILD_DIR/lb
make
makeinstall
cd$BUILD_DIR
tarzxvflibpng-1.2.18.tar.gz
cdlibpng-1.2.18
envCPPFLAGS="-I$BUILD_DIR/lb/include"LDFLAGS="-L$BUILD_DIR/lb/lib"CFLAGS="-O3-fPIC"\
./configure--disable-shared--prefix=$BUILD_DIR/lb
make
makeinstall
cd$BUILD_DIR
tarzxvffreetype-2.3.5.tar.gz
cdfreetype-2.2.5
envCPPFLAGS="-I$BUILD_DIR/lb/include"LDFLAGS="-L$BUILD_DIR/lb/lib"CFLAGS="-O3-fPIC"\
./configure--disable-shared--prefix=$BUILD_DIR/lb
make
makeinstall
cd$BUILD_DIR
tarzxvflibart_lgpl-2.3.17.tar.gz
cdlibart_lgpl-2.3.17
envCFLAGS="-O3-fPIC"./configure--disable-shared--prefix=$BUILD_DIR/lb
make
makeinstall
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
cd$BUILD_DIR
tarzxfrrdtool-1.2.23.tar.gz
cdrrdtool-1.2.23
./configure--prefix=$INSTALL_DIR--disable-python--disable-tcl&&make&&makeinstall
//完成后建立符号连接
ln–s/usr/local/rrdtool/bin/*/usr/local/bin/
//执行rrdtool看是否安装正确
2.安装net-snmp
RedHat默认安装了SNMP服务,但好象没有snmpwalk,snmpget这两个命令,所以需要编译安装NET-SNMP。
NET-SNMP官方网站:
-snmp.org/
#tarzxvfnet-snmp-5.2.4.tar.gz
#cdnet-snmp-5.2.4
#./configure--prefix=/usr/local/net-snmp --enable-developer
#make
#makeinstall
#ln–s/usr/local/net-snmp/bin/*/usr/local/bin/
#cpEXAMPLE.conf /usr/local/net-snmp/share/snmp/snmpd.conf
//修改snmpd.conf(修改COMMUNITY、允许抓取snmp数据的主机、抓取数据范围等)。
#/usr/local/net-snmp/sbin/snmpd //启动SNMP服务
#vi/etc/rc.d/rc.local
//在rc.local上加入一行/usr/local/net-snmp/sbin/snmpd,系统启动时启动SNMP服务。
3.安装Cacti
Cacti官方网站:
#tar–zxvfcacti-0.8.6j.tar.gz
#mv–rcacti-0.8.6j/usr/loca/apache/htdocs/cacti
#vi/usr/local/apache/htdocs/cacti/include/config.php
$database_type="mysql";
$database_default="cacti";
$database_hostname="localhost";
$database_username="cacti";
$database_password="cacti";
//添加cacti用户
#useraddcacti
//将rra目录的所有权给cacti用户
#chown–Rcacti/usr/loca/apache/htdocs/cacti/rra
//修改cacti目录所属组
#chgrp–Rcacti/usr/loca/apache/htdocs/cacti
//为cacti用户添加cron任务
#su–cacti
#crontab–e
*/5****/usr/local/bin/php/usr/local/apache/htdocs/cacti/poller.php>/dev/null2>&1
注意:
首次执行poller.php时请使用cacti用户,否则生成的rrd文件cacti将没有写入权限。
建立数据库:
root@Bleachphp-4.3.10]#/usr/local/mysql/bin/mysql-uroot-pmysql
mysql>createdatabasecactidb;
mysql>grantalloncactidb.*toroot;
mysql>grantalloncactidb.*toroot@localhost;
mysql>grantalloncactidb.*tocactiuser;
mysql>grantalloncactidb.*tocactiuser@localhost;
mysql>setpasswordforcactiuser@localhost=password('cactipw');
注:
以上语句输出QueryOK,0rowsaffected(0.01sec)表示成功
mysql>exit
Mysql设置完毕
检测apache+php+mysql
[root@tsaiusr]#cd/www/htdocs
[root@tsaihtdocs]#touchtest.php
[root@tsaihtdocs]#vitest.php
phpinfo();
?
>
保存退出:
wq
[root@tsaihtdocs]#touchmydqltest.html
[root@tsaihtdocs]#vimysqltest.html
$link=mysql_connect(localhost,root);
mysql_select_db(mysql);
$str=select*fromuser;;
$result=mysql_query($str,$link);
$show=mysql_num_rows($result);
mysql_close($link);
for($i=0;$i<$show;$i++)
{
$arr[$i]=mysql_fetch_array($result);
};
?
>
4.安装Cactid
CACTID的安装需要以下支持:
o net-snmp-devel(需要编译安装net-snmp时添加--enable-developer选项)
o mysql
o mysql-devel (mysql源文件编译安装后默认支持)
o openssl-devel (Redhat默认安装)
#tar-zxvfcacti-cactid-0.8.6i.tar.gz
#cdcacti-cactid-0.8.6i
#./configure--with-mysql=/usr/local/mysql--with-snmp=/usr/local/net-snmp
#make
//这时你将在此目录下看到多出了cactid、cactid.conf两个文件
#mkdir/usr/local/cactid
#cpcactidcactid.conf/usr/local/cactid
#vi /usr/local/cactid/cactid.conf //修改cactid配置文件
DB_Host 127.0.0.1
DB_Database cacti
DB_User cacti
DB_Pass cacti
5.数据库配置
#mysql–uroot–p
Password:
mysql>createdatabasecacti;
QueryOK,1rowaffected(0.00sec)
mysql>grantalloncacti.*tocacti@localhostidentifiedby“cacti”;
QueryOK,1rowaffected(0.00sec)
mysql>exit
#cd/usr/local/apache/htdocs/cacti
#mysql–uroot–pcactiPassword:
6.完成cacti的安装
1).在浏览器中输入:
默认用户名:
admin密码:
admin
2).更改密码
3).设置cacti用到的命令路径
snmpwalkBinaryPath /usr/local/bin/snmpwalk
snmpgetBinaryPath /usr/local/bin/snmpget
RRDToolBinaryPath /usr/local/bin/rrdtool
PHPBinaryPath /usr/local/bin/php
CactiLogFilePath /usr/local/apache/htdocs/cacti/log/cacti.log
CactidPollerFilePath /usr/local/cactid/cactid