Cacit 运行环境须要
Apache+ PHP + Mysql + rrdtool 以及 snmp 工具的支持。
下边是本次配置须要用到的软件。
1安装mysql数据库
mysql-5.1.40]# ./configure --prefix=/usr/local/mysql
--enable-thread-safe-client
--enable-local-infile
--with-charset=gbk
--with-extra-charsets=all
--with-low-memory
--with-named-curses-libs=/usr/lib/libncursesw.so.5
出现如下状况/bin/rm: cannot remove `libtoolT': No such file or directory
config.status: executing default commands删除configure文件里的$RM "$cfgfile"这一行,重新编辑就不会在现实。
make make install
若是想安装选项文件,使用当前存在的‘support-files’文件夹下的做为模板,执行指令:
[root@localhost mysql-5.1.40]#cp support-files/my-medium.cnf /etc/my.cnf
若是须要在此让mysqld每次开机时自动启动,须要执行如下指令:
[root@localhost mysql-5.1.40]#cp -r support-files/mysql.server /etc/init.d/mysqld
[root@localhost mysql-5.1.40]#chmod 755 /etc/init.d/mysqld
[root@localhost mysql-5.1.40]#chkconfig --del mysqld
[root@localhost mysql-5.1.40]#chkconfig --add mysqld
若是在以前没有安装过MySQL,必须建立一个MySQL准许的表。
[root@localhost mysql-5.1.40]#bin/mysql_install_db --user=mysql
进行目录受权:
[root@localhost mysql-5.1.40]#chown -R mysql:mysql /usr/local/mysql/
[root@localhost mysql-5.1.40]#chown -R mysql /usr/local/mysql/var
全部的配置完成后,执行如下命令测试并运行MySQL
[root@localhost mysql-5.1.40]#/usr/local/mysql/bin/mysqld_safe --user=mysql &
[root@localhost mysql-5.1.40]service mysqld start
正常启动后须要更改管理员的密码。能够运行mysqladmin,执行命令
[root@localhost mysql-5.1.40]/usr/local/mysql/bin/mysqladmin -u root -p password '123456'
Enter password: (这里不须要再输入密码直接按回车键便可)
测试登录mysql数据库
[root@localhost ]mysql -u root -p
-bash: mysql: command not found 出现这一行须要安装MySQL-client软件包,安装完后重新登录mysql数据库
[root@localhost ~]mysql -u root –p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.1.40-log Source distribution
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
出现以上状况说明登录成功。
2安装Aapche软件包
[root@localhost httpd-2.2.17]#./configure --prefix=/usr/local/apache2
-with-mysql=/usr/local/mysql
--enable-so --enable-track-vars
--enable-rewrite --with-zlib
--enable-mods-shared=all
--enable-suexec
--with-suexec-caller=daemon
--enable-modules=most
make make install
3安装PHP软件包
须要安装的软件包有freetype-devel libpng-devel libjpeg-devel libxml2-devel
[root@localhost php-5.2.6]#./configure --prefix=/usr/local/php
--with-apxs2=/usr/local/apache2/bin/apxs
--with-mysql=/usr/local/mysql
--with-libxml-dir
-with-png-dir
--with-jpeg-dir
--with-zlib
--with-freetype-dir
--with-gd
--enable-mbstring=all
--enable-sockets
make make install
[root@localhost php-5.2.6] # cp -fr php.ini-dist /usr/local/php/php.ini
编辑apache配置文件httpd.conf
查找
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
在其下加入
AddType application/x-tar .tgz
AddType application/x-httpd-php .php
AddType p_w_picpath/x-icon .ico
修改
DirectoryIndex 行,添加index.php
修改成
DirectoryIndex index.php index.html index.html.var
测试新建vim /usr/local/apache2/htdocs/index.php添加如下内容
<?php
phpinfo();
?>
出现如下如说明安装正确
5安装net-snmp net-snmp-devel net-snmp-libs net-snmp-utils软件包
能够用
yum install net-snmp net-snmp-devel net-snmp-libs net-snmp-utils进行安装。
修改
/etc/snmp/snmpd.conf文件
更改 一、com2sec notConfigUser default public
改成:com2sec notConfigUser 127.0.0.1 public
二、access notConfigGroup “” any noauth exact systemview none none
改成:access notConfigGroup “” any noauth exact all none none
三、#view all included .1 80
将前面的 # 注释 去掉。
保存退出 :wq 重启service snmpd restart
6安装rrdtool
# ./configure --prefix=/usr/local/rrdtool
make make install
若是
./configure 时出现下面这个错误
configure: error: Please fix the library issues listed above and try again.
|
代表系统有功能缺失,需安装
libart_lgpl-devel.rpm 这个包
若是仍是提示听样的错误,有多是找不到
FreeType
把
/usr/local/freetype2/lib/pkgconfig 下的 .pc 文件拷贝到 /usr/lib/pkgconfig 下便可
若是
make install 时出现 [tclrrd.o] 错误
就安装
tcl-8.4.7-2.i386.rpm 以及 tcl-devel-8.4.7-2.i386.rpm 这 2 个包
解压
cacti软件包
把解压的
cacti软件包复制到apache WEB目录
cp -fr cacti-0.8.7g/ /usr/local/apache2/htdocs/cacti
进入
mysql数据库建立cacti数据库
mysql –u root –p
create database cacti;
查看数据库是否建立
mysql> show databases;
+--------------------+
| Database
|
+--------------------+
| information_schema |
| cacti
|
| mysql
|
| test
|
+--------------------+
4 rows in set (0.00 sec)显示出
cacti数据库说明建立好,接下来还原cacti.sql数据库
[root@localhost ] # mysql -u root -p cacti < /usr/local/apache2/htdocs/cacti/cacti.sql(小于号后面是cacti.sql数据库的存放路径)
# vi /data/web_server/admin/cacti/include/config.php
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "数据库用户
";
$database_password = "用户密码
";
更改后保存退出。
# crontab –
e (加入自动执行规则,每 5 分钟执行。)
*/5 * * * * /usr/local/php/bin/php /usr/local/apache2/htdocs/cacti/poller.php > /dev/null 2>&1
打开浏览器 http://IP/cacti 进入cacti的初始设置页面
第一次默认登录帐号:admin 密码 admin
登录后在新改个密码就OK
说一下 cacti 设置页中各项“零件”的路径。
当修改好新密码进入,第一个显示出的页面就是让你设置
rrdtool,snmp 等工具的路径。这是个很重要的环节,必须无误,要否则 cacti 将没法生成出统计图。
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:
/data/web_server/admin/cacti/log/cacti.log
Cactid Poller File Path:
/data/web_server/admin/cacti/poller.php
|
默认的配置中会出现许多“
NotFound ”
按照上边的路径把“
NotFound ”的项都从新填上。
手动运行一次
/usr/local/php/bin/php /data/web_server/admin/cacti/poller.php > /dev/null 2>&1
你就能在顶上
graphs 中 localhost 里头看到本机的内存,CPU,登录用户等的统计图 .
但默认
Cacti 是没有建立网卡流量的监控图的。要咱们本身来加。
回到
console 菜单
选择
Devices 监控设备。
而后点击右上角的
Add 进行添加
Description 设备名称
( 可随意输入 )
Hostname 设备地址
( 若是是本机就填 127.0.0.1 )
Host Template 设备的类型
( 选择 ucd/net SNMP Host )
而后其余按照默认便可,以下图
点
create 建立。
若是刚才填写的地址无误,建立成功后,会在该页面左上方出现所新建设备的
SNMP Information
而后点击隔壁醒目的
* Create Graphs for this Host 即开始建立监控图表
如图
6,沟选你所要监控的网卡以及 IP,点 create 。
这样就完成了你所指定设备统计图的建立。
/usr/local/php/bin/php /data/web_server/admin/cacti/poller.php > /dev/null 2>&
|
而后曲线表中就能出现第一个峰值,每
5 分钟自动更新。 24 小时后,曲线图就能完整地出如今你眼前。
Choose an action 框中选择
Place on a Tree(default Tree)
Cacti 的强大功能不单止能够经过
snmp 获取装有 Linux,Unix 操做系统服务器的运行状态,还能监控 Windows 系统服务器。跟诸如 Cisco,Linksys, 路由器,交换机,无线 AP 。或者其余支持 snmp 管理协议的网络设备。
下边咱们举出实应用的例子。
设备结构:
- 网络入口路由器 Linksys RV042。
Linksys 的一款路由器,主要负责,外网接入路由,防火墙,以及端口映射。
- server1 WEB 应用服务器
操做系统: Linux RedHat As4
Eth0,Eth1 双网卡工做。前者接入路由器映射至外网。后者直连至 server2
进行反向代理 ( proxy ) 以及数据备份以及同步等功能。
IP 分别为 192.168.3.2 以及 192.168.10.2
- server2储存,FTP与WEB 应用服务器
操做系统: Windows2003 r2
与 server1 网络环境相仿,双网卡工做。
IP 分别为 192.168.3.3 以及 192.168.10.3
Cacti 已经配置完成,安装在
server1 上。第一台添加到监控表里边的是路由器 RV042 。打开路由器的 WEB 设置页面,勾选并启用 SNMP 功能。如图 9
Send SNMP Trap to:
192.168.3.2( server1 的 IP )
而后其余输入框按照默认留空便可,但需留意
Get Community Name: 所填写的组名: public 。保存设置。
Description 设备名称
( 咱们这里自定为 Linksys RV042)
Hostname 设备地址
( 路由器的地址 192.168.3.1 )
Host Template 设备的类型
( 选择 ucd/net SNMP Host 或者是 Cisco Router )
而后其余按照默认便可。
建立成功后,也会在该页面左上方出现所新建设备的
Linksys RV042 SNMP Information
点击隔壁
*Create Graphs for this Host 建立监控图表
路由器
RV042 的端口以及 IP 等数据都取出来了。
勾选好所要监控的端口,点击
create 就能完成路由器监控图表的创建。
Cacti 运行在
Server1 上,因此配置方式跟前边所介绍是同样的,这里就掠过了。但顺带说一下,若是环境中还存在 Server3,并且跟 Server1 同样都是 Linux 系统,须要添加到 cacti 里头。哪么只需在该服务器上修改 snmp 配置,修改的内容也跟 server1 上几乎同样,不一样的是。
编辑
/etc/snmp/snmpd.conf 的时候,原来填 127.0.0.1 ( 本机地址 ) 的地方换成 Cacti 所在运行的服务器 IP,即 server1: 192.168.3.2
- com2secnotConfigUser default public
改成:com2secnotConfigUser 192.168.3.2(server1 地址) public
- access notConfigGroup "" any noauth exact systemview none none
改成:
accessnotConfigGroup""anynoauthexact all none none
- #view all included .1 80
将前面的 # 注释 去掉。
- 保存退出 :wq
从新启动
snmp 服务
# service snmpd restart
填写
Server3 IP 地址,设备类型: ucd/net SNMP Host , 建立图表 , 完成。