注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

CCIE那点事-李萧明

博客已转移到www.jdccie.com CCIE那点事敬请期待

 
 
 

日志

 
 

Cacti安装最全配置资料  

2011-03-29 22:51:00|  分类: Linux |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
安装环境:
1.系统:Centos 5.12.软件包需求:cacti-0.8.7j,mysql-5.0.20,php-5.2.6,apache2.2(以上均为源码包).
安装配置过程:
1. 安装apache2.2解压软件包,进入安装目录,我的编译过程如下:
# ./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=all --with-mpm=worker --enable-cache --enable-disk-cache --enable-mem-cache --enable-file-cache
# make# make install
Apache编译参数注解./configure   //配置源代码树
--prefix=/usr/local/apache   //体系无关文件的顶级安装目录PREFIX ,也就Apache的安装目录。
--enable-module=so   //打开 so 模块,so 模块是用来提 DSO 支持的 apache 核心模块
--enable-deflate=shared   //支持网页压缩
--enable-expires=shared   //支持 HTTP 控制
--enable-rewrite=shared   //支持 URL 重写
--enable-cache  //支持缓存
--enable-file-cache  //支持文件缓存
--enable-mem-cache  //支持记忆缓存
--enable-disk-cache  //支持磁盘缓存
--enable-static-support   //支持静态连接(默认为动态连接)
--enable-static-htpasswd   //使用静态连接编译 htpasswd - 管理用于基本认证的用户文件
--enable-static-htdigest   //使用静态连接编译 htdigest - 管理用于摘要认证的用户文件
--enable-static-rotatelogs   //使用静态连接编译 rotatelogs - 滚动 Apache 日志的管道日志程序
--enable-static-logresolve   //使用静态连接编译 logresolve - 解析 Apache 日志中的IP地址为主机名
--enable-static-htdbm   //使用静态连接编译 htdbm - 操作 DBM 密码数据库
--enable-static-ab   //使用静态连接编译 ab - Apache HTTP 服务器性能测试工具
--enable-static-checkgid   //使用静态连接编译 checkgid
--disable-cgid   //禁止用一个外部 CGI 守护进程执行CGI脚本
--disable-cgi   //禁止编译 CGI 版本的 PHP
--disable-userdir   //禁止用户从自己的主目录中提供页面
--with-mpm=worker // 让apache以worker方式运行
--enable-rewrite //让apache支持伪静态规则
--enable-deflate //开启gzip压缩
--enable-authn-dbm=shared // 对动态数据库进行操作。Rewrite时需要
--enable-mods-shared=all 做大化编译
安装完成后,编辑apache的配置文件,使之能正常使用:
# vi /usr/local/apache/conf/httpd.conf
找到下面这行:
#ServerName
[url]www.example.com:80[/url]
改为:
ServerName yourIP:80
#Listen 80
Listen yourIP:80
启动apache:
#/usr/local/apache/bin/apachectl start
在浏览器里输入你的IP或者localhost测试一下,是否能看到apache的测试页,成功的话,说明安装成功
#cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
vi /etc/rc.d/rc.local
#apache start
/usr/local/apache/bin/apachectl start  ---添加apache自启动
这样就可以实现service httpd restart 了
2.安装mysql-5.0.20
解压软件包,进入安装目录,我的编译过程如下:
# ./configure --prefix=/usr/local/mysql
# make;make install
# cp support-files/my-medium.cnf /etc/my.cnf (这一步是将配置文件拷贝到/etc下面)
编译选项当中指定安装路径就可以了
配置mysql过程:
#groupadd mysql
#useradd -g mysql mysql
#cd /usr/local/mysql
#./bin/mysql_install_db --user=mysql
#chown -R root .
#chown -R mysql var
#chgrp -R mysql .
启动mysql
#./bin/mysqld_safe --user=mysql &
如果看到下面的信息,就说明启动成功了
# Starting mysqld daemon with databases from /usr/local/mysql/var
可以测试一下,看看能不能登陆mysql数据库
# /usr/local/mysql/bin/mysqladmin -uroot password '你的密码' (给初始登陆mysql的用户root设置密码,当
然不设置也能登陆,推荐设置密码)
# /usr/local/mysql/bin/mysql -uroot -p你的密码  (注意: -p后面不要带空格)
如果出现下面的欢迎字样,说明连接成功:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 9 to server version: 5.0.20a-log
mysql> set password for );
mysql> Query OK, 0 rows affected (0.00 sec)
mysql> create database cactidb;
mysql> grant all on cactidb.* to root;
mysql> grant all on cactidb.* to ;
mysql> grant all on cactidb.* to cactiuser;
mysql> grant all on cactidb.* to ;
mysql> set password for );
mysql> flush privileges; (See cacti docs/INSTALL)
mysql> exit
//select * from user;
//查询帐号是否添加成功
3.安装php-5.2.0
解压软件包,进入安装目录,我的编译过程如下:
#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-xml-config=/usr/local/lib --with-config-file-path=/usr/local/php/etc --enable-socket 
#make;make install
编译选项中--with-apxs2=/usr/local/apache/bin/apxs 是说将PHP模块编译进apache,--with-
mysql=/usr/local/mysql  是说指定mysql的路径(其实就是告诉PHP我们的mysql的一些头文件信息,如果你的
mysql和PHP不是同一台机器的话,指定mysql的头信息是编译必要的),--with-config-file-
path=/usr/local/php/etc 是说将PHP的主配置文件放在什么地方,这是个人习惯
#cp php.ini-dist /usr/local/php/lib/php.ini
#vi /usr/local/apache/conf/httpd.conf
找到下面字段:
DirectoryIndex
在iindex.html前面添加index.php
并在配置文件最后加入如下字段:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
测试PHP是否正常运行:
#vi /usr/local/apache2/htdocs/index.php
写入下面一行:
保存退出后重新启动apache
#/etc/init.d/httpd start
在浏览器里输入IP,如果能够看到phpinfo的测试页,那么PHP已经正常工作了
4,安装rrdtool
tar zxvf rrdtool-1.0.50.tar.gz
cd rrdtool-1.0.50
./configure --prefix=/usr/local/rrdtool
make
make install
5, net-snmp 安装
rpm -qa | grep net-snmp
net-snmp-*
net-snmp-*
net-snmp-*
编辑本地snmpd:
vi /etc/snmp/snmpd.conf
更改 1、com2sec notConfigUser  default      public
      改为:com2sec notConfigUser (你想监控的那台机器的IP)      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
service snmpd restart
注:如果你机器内没有snmpwalk和snmpge命令,请到安装盘里查找 net-snmp-utils 包,rpm -ivh net-snmp-utils-*.rpm 只后这两个命令就在系统里了。其他包也都在安装盘里 确保安装这四个包就OK
6,解压cacti的软件包,进行如下操作:
#mv cacti-0.8.7  /usr/local/apache/htdocs/cacti
#cd /usr/local/apache/htdocs/cacti
useradd cactiuser
passwd cactiuser (pwd:cactipw)
/usr/local/mysql/bin/mysql –u root –p cactidb 导入数据表
chown –R cactiuser rra/ log/
vi include/config.php
  $database_type = “mysql”;
  $database_default = “cactidb”;
  $database_hostname = “localhost”;
  $database_username = “cactiuser”;
  $database_password = “cactipw”;
7,修改计划任务,使CACTI每5分钟获得一次数据:
#crontab -e -u 用户名
添加如下内容:
*/5 * * * * /usr/local/php/bin/php /usr/local/apache/htdocs/cacti/poller.php > /dev/null 2>&1
保存退出
#chown -R rra/ log/。
8,cacti 配置
[url]http://localhost/cacti[/url]
默认账号密码都是admin
配置路径:
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: /opt/cacti/log/cacti.log
Cactid Poller File Path: /opt/cacti/poller.php
9,排错
1. 首先检查一下rra/下面,有没有数据,如果没有检查rra/ log/的拥有者是不是cactiuser
2. snmpwalk -v 2c -c public ServerIP if 用来测试被控对象(serverIP)是否开启了SNMP服务
3. snmpwalk -v 2c ServerIP -c public .1.3.6.1.4.1.2021.10.1.3 查看被控端是否有CPU负载的数据返回
4. /usr/local/bin/php /home/wwwroot/cacti/poller.php 用来测试PHP是否可以采集到数据。如果上面的都正确,但这步出错,很有可能是PHP配置的问题,或开启了SuLinux。
5. 如果按第2步snmpwalk能采集到数据,但第3步无法采集,可能是PHP设置的问题,修改PHP.ini,很有可能是PHP权限问题。如果第4步正常而无法显示图,则可能是rra/ log/ 的Owner不对6. #crontab -e*/5 * * * * /usr/local/php/bin/php /usr/local/apache/htdocs/cacti/poller.php > /dev/null 2>&1
      //每5分钟自动执行一次数据注意:如果执行没成功是模式没有执行 或者运行一下该命令看rra文件夹是否有数据# /usr/local/php/bin/php /usr/local/apache/htdocs/cacti/poller.php查询模式crond的
[root@localhost bin]# chkconfig --list| grep cron
anacron         0:off   1:off   2:on    3:off   4:on    5:on    6:off
crond           0:off   1:off   2:on    3:off   4:on    5:on    6:off[root@localhost bin]# chkconfig crond on    //更改模式为启动计划任务[root@localhost bin]# chkconfig --list| grep cron
anacron         0:off   1:off   2:on    3:off   4:on    5:on    6:off
crond           0:off   1:off   2:on    3:on    4:on    5:on    6:off php相关环境配置实例一:

./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt --with-zlib --with-gd --with-gettext --with-gdbm --enable-mbstring --enable-sockets

  评论这张
 
阅读(6)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018