在AS4上架设Cacti 0.8.6g

来源:互联网 发布:多宝视网络弱视训练 编辑:程序博客网 时间:2024/04/29 11:28

Cacti的功能与用途这里就不多做介绍了,但它并不是万能的,例如无法统计某个IP段的流量情况,期待新版或Mod能让其真正强大起来。

一、ApachePHPMysql安装

 

 

 

(1). apache安装

 

 

 

       下载

 

 

 

       wget http://apache.justdn.org/httpd/httpd-2.0.55.tar.gz

 

 

 

解压

 

 

 

tar zxvf httpd-2.0.55.tar.gz

 

 

 

如果没有最大化安装as4或没有安装以下包,编译会报错

 

 

 

可手动安装编译环境,或在添加删除应用程序中选中安装-开发工具

 

 

 

rpm –ivh xxxxx.rpm         #xxxxx.rpm包安装顺序如下:

 

 

 

1glibc-kernheaders-2.4-8.10.i386.rpm
2
binutils-2.13.90.0.18-9.i386.rpm
3
cpp-3.2.2-5.i386.rpm
4
glibc-devel-2.3.2-11.9.i386.rpm
5
glibc-common-2.3.2-11.9.i386.rpm
6
gcc-3.2.2-5.i386.rpm

 

 

 

配置

 

 

 

cd httpd-2.0.55

 

 

 

./configure --prefix=/usr/local/apache-2.0.55 /

 

 

 

--with-mpm=prefork /

 

 

 

--enable-vhost-alias /

 

 

 

--enable-rewrite /

 

 

 

--enable-expires /

 

 

 

--enable-so

 

 

 

编译并安装

 

 

 

make && make install

 

 

 

(2).修改配置文件

 

 

 

cd /usr/local/apache-2.0.55/conf

 

 

 

vi httpd.conf

 

 

 

KeepAlive Off              #on改成off,关闭持久连接

 

 

 

<IfModule prefork.c>

 

 

 

StartServers        5

 

 

 

MinSpareServers    5

 

 

 

MaxSpareServers   10

 

 

 

ServerLimit     4000   #添加这一行,一定要大于MaxClients,但要小于20000

 

 

 

MaxClients     2000    #根据内存大小,一般情况下是1G内存2000

 

 

 

MaxRequestsPerChild  0

 

 

 

</IfModule>

 

 

 

注: ServerName 可修改为域名或本机ip

 

 

 

cd /usr/loca/apache-2.0.55/bin

 

 

 

启动:./apachectl start

 

 

 

 

 

 

关闭:./ apachectl stop

 

 

 

(3).添加PHP模块,并支持Mysql

 

 

 

1.mysql的安装

 

 

 

       cd /soft/

 

 

 

       下载

 

 

 

       wget http://dev.mysql.com/get/Downloads/MySQL-4.0/mysql-4.0.26.tar.gz/from/http://mysql.byungsoo.net/

 

 

 

解压

 

 

 

tar zxvf mysql-4.0.26.tar.gz

 

 

 

配置

 

 

 

cd mysql-4.0.26

 

 

 

./configure –prefix=/usr/local/mysql-4.0.26

 

 

 

       编译并安装

 

 

 

make

 

 

 

make install

 

 

 

启动mysql:端口3306

 

 

 

       cd /soft/mysql-4.0.26

 

 

 

       cp support-files/my-medium.cnf /etc/my.cnf

 

 

 

       y

 

 

 

       groupadd mysql                                                      #添加mysql用户和组

 

 

 

       useradd –g mysql mysql

 

 

 

       /usr/local/mysql-4.0.26/bin/mysql_install_db               #初始化权限表

 

 

 

       chown –R mysql:mysql /usr/local/mysql-4.0.26/var   #更改目录所属组

 

 

 

       /usr/local/mysql-4.0.26/bin/mysqld_safe &                 #启动mysql

 

 

 

       两次回车

 

 

 

       mysql

 

 

 

       /usr/local/mysql-4.0.26/bin/mysqladmin shutdown     #关闭mysql

 

 

 

2.php编译参数

 

 

 

       下载

 

 

 

       wget http://cn2.php.net/get/php-4.4.1.tar.gz/from/cn.php.net/mirror

 

 

 

解压

 

 

 

tar zxvf php-4.4.1.tar.gz

 

 

 

安装 jpegsrc.v6b.tar.gz libpng-1.2.8-config.tar.gz,否则提示错误“libjpeg.(a|so) not found.

 

 

 

配置

 

 

 

./configure --prefix=/usr/local/php-4.4.1 /

 

 

 

--with-apxs2=/usr/local/apache-2.0.55/bin/apxs /

 

 

 

--with-iconv /

 

 

 

--with-mysql=/usr/local/mysql-4.0.26 /

 

 

 

--with-gd /

 

 

 

--with-jpeg-dir=/usr/local /

 

 

 

--with-png-dir /

 

 

 

--with-zlib /

 

 

 

--enable-gd-native-ttf /

 

 

 

# 以下参数是安装cacti时才用到

 

 

 

--enable-sockets /

 

 

 

--with-snmp /

 

 

 

--enable-ucd-snmp-hack

 

 

 

编译并安装

 

 

 

make && make install

 

 

 

3.拷贝及修改php.ini

 

 

 

       cd /soft/ php-4.4.1/

 

 

 

cp php.ini-dist /usr/local/php-4.4.1/lib/php.ini

 

 

 

修改配置文件

 

 

 

vi /usr/local/php-4.4.1/lib/php.ini

 

 

 

memory_limit = 84M

 

 

 

display_errors = Off

 

 

 

log_errors = Off     #日志记录可不必开启

 

 

 

log_errors_max_len = 10240

 

 

 

error_log = /hdp1/v2/log/php_error.txt         #目录手动添加

 

 

 

post_max_size = 82M

 

 

 

upload_max_filesize = 80M

 

 

 

4.修改apachehttpd.conf文件 添加如下一行,让它能够解析.php文件

 

 

 

cd /usr/local/apache-2.0.55/conf/

 

 

 

vi httpd.conf

 

 

 

要添加到AddType相关的行

 

 

 

AddType application/x-httpd-php .php

 

 

 

重启apache

 

 

 

cd /usr/local/apache-2.0.55/bin/

 

 

 

./apachectl stop

 

 

 

./apachectl start

 

 

 

(4).添加虚拟主机

 

 

 

cd /usr/local/apache-2.0.55/conf/

 

 

 

vi httpd.conf

 

 

 

       NameVirtualHost *:80

 

 

 

<VirtualHost *:80>

 

 

 

    ServerName www.zcom.com

 

 

 

    DocumentRoot /home/www/www.zcom.com     #目录需要手工建立

 

 

 

    ErrorLog /dev/null

 

 

 

    CustomLog /dev/null common

 

 

 

</VirtualHost>

 

 

 

 

 

 

二、SNMP安装和配置

 

 

 

       (3).redhat

 

 

 

       如果系统安装的时候没有安装可以先装一个apt,然后用apt-get install net-snmp来安装

 

 

 

修改配置文件

 

 

 

       vi /etc/snmp/snmpd.conf

 

 

 

       修改如下两行

 

 

 

       com2sec notConfigUser  default       zengyu

access  notConfigGroup ""      any       noauth    exact  mib2 none none

 

 

 

去掉下面几行前面的“#

 

 

 

com2sec local     localhost       COMMUNITY

 

 

 

com2sec mynetwork NETWORK/24      COMMUNITY

 

 

 

group MyRWGroup  any        local

 

 

 

group MyROGroup  any        mynetwork

 

 

 

view all    included  .1                               80

 

 

 

view mib2   included  .iso.org.dod.internet.mgmt.mib-2 fc

 

 

 

access MyROGroup ""      any       noauth    0      all    none   none

 

 

 

access MyRWGroup ""      any       noauth    0      all    all    all

 

 

 

开启:

 

 

 

setup

 

 

 

system service选中snmp

执行service snmpd start

 

 

 

三、rrdtool-1.2.11安装

 

 

 

安装libart

 

 

 

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

 

 

 

tar zxvf libart_lgpl-2.3.17.tar.gz

 

 

 

cd libart_lgp-2.3.17

 

 

 

./configure

 

 

 

make

 

 

 

make install

 

 

 

 

 

 

安装 libcgi

 

 

 

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

 

 

 

tar zxvf cgilib-0.5.tar.gz

 

 

 

cd cgilib-0.5

 

 

 

make

 

 

 

cp libcgi.a /usr/local/lib

 

 

 

cp cgi.h /usr/include

 

 

 

 

 

 

【安装 libcgi

 

 

 

wget http://lists.ee.ethz.ch/p/cgilib-0.5.1.tar.gz

 

 

 

tar zxvf cgilib-0.5.1.tar.gz

 

 

 

cd cgilib-0.5.1

 

 

 

./configure

 

 

 

make && make install

 

 

 

cd libcgi

 

 

 

cp cgi.h /usr/include

 

 

 

 

 

 

安装 libpng

 

 

 

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

 

 

 

tar zxvf libpng-1.2.8-config.tar.gz

 

 

 

cd libpng-1.2.8-config/

 

 

 

./configure

 

 

 

make

 

 

 

make install

 

 

 

 

 

 

安装freetype

 

 

 

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

 

 

 

tar zxvf freetype-2.1.9.tar.gz

 

 

 

cd freetype-2.1.9

 

 

 

./configure

 

 

 

make

 

 

 

make install

 

 

 

cd /usr/include

 

 

 

ln -sf /usr/local/include

 

 

 

 

 

 

安装 rrdtool

 

 

 

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

 

 

 

tar zxvf rrdtool-1.2.11.tar.gz

 

 

 

cd rrdtool-1.2.11

 

 

 

./configure --prefix=/usr/local/rrdtool-1.2.11 /

 

 

 

--disable-tcl /

 

 

 

--disable-python

 

 

 

make

 

 

 

make install

 

 

 

 

 

 

四、安装cacti

 

 

 

       前提条件:mysql,apache,php,rrdtool, snmp

 

 

 

(1.)  下载并安装

 

 

 

cd /usr/local/apps/www

 

 

 

wget http://www.cacti.net/downloads/cacti-0.8.6g.tar.gz

 

 

 

tar zxvf cacti-0.8.6g.tar.gz

 

 

 

mv cacti-0.8.6g cacti

 

 

 

cd cacti

 

 

 

(2).打补丁

 

 

 

wget http://www.cacti.net/downloads/patches/0.8.6g/short_open_tag_parse_error.patch

 

 

 

wget http://www.cacti.net/downloads/patches/0.8.6g/graph_properties_zoom.patch

 

 

 

wget http://www.cacti.net/downloads/patches/0.8.6g/script_server_snmp_auth.patch

 

 

 

wget http://www.cacti.net/downloads/patches/0.8.6g/mib_file_loading.patch

 

 

 

patch -p1 -N < short_open_tag_parse_error.patch

 

 

 

patch -p1 -N < graph_properties_zoom.patch

 

 

 

patch -p1 -N < script_server_snmp_auth.patch

 

 

 

patch -p1 -N < mib_file_loading.patch

 

 

 

(3)配置mysql数据库

 

 

 

#mysql

 

 

 

mysql> create database cacti;

 

 

 

mysql> grant all privileges on cacti.* to cacti@123.123.123.123 identified by ‘cacti’;

 

 

 

mysql> flush privileges;

 

 

 

mysql>quit

 

 

 

导入库:

 

 

 

mysql --database=cacti </usr/local/apps/www/cacti/cacti.sql

 

 

 

配置cacti连接数据库

 

 

 

#vi /usr/local/apps/www/cacti/include/config.php

 

 

 

$database_type = “mysql”;
$database_default = “cacti”;
$database_hostname = 123.123.123.123”;
$database_username = “cacti”;
$database_password = “cacti”;

注:123.123.123.123是本机IP地址

       (4).定时运行cacti收集数据

       /etc/crontab -e

       添加一行:

       */5 * * * * /usr/local/php-4.4.1/bin/php /usr/local/apps/www/cacti/poller.php >/dev/null 2>&1

修改apache配置文件httpd.conf,添加默认访问文件index.php

 

 

 

      

 

 

 

cacti的使用配置:

 

 

 

第一次进入需要配置,RRDTOOL路径修改为/usr/local/rrdtool-1.2.11/bin/rrdtool

 

 

 

第一次进入,用admin/admin,然后会提示修改密码,然后即可进入。

 

 

 

settingà修改rrdtool版本,默认是1.0.x,修改为1.2.x,否则图片显示不出来

 

 

 

device下添加要监控的设备;修改设备,添加SNMP-Interface监控;在newgraph下选中设备添加该设备网卡;在tree中添加该设备。

 

 

 

测试:/usr/local/apps/php/bin/php /usr/local/apps/www/cacti/poller.php

 

 

 

如遇到cacti/log/cacti.log中显示无法连接localmysql,做如下处理:

 

 

 

ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

原创粉丝点击