上次安装不成功,最终放弃,总是不甘心,这次重来,这次安装还算顺利!发现有些事情,放一放,重新来,就会有新的思路,也会发现新的方法,但所有的事情都经得起等待吗?
1、首先,激活额外的yum源
# yum install yum-priorities
# wget http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
# rpm –import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
# rpm -K rpmforge-release-0.3.6-1.el5.rf.i386.rpm
# rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
2、配置MySQL、Apache、PHP环境
# yum -y install mysql mysql-server php-mysql httpd php
安装完,启动相关的服务,和设置开机启动
# chkconfig –level 235 mysqld on
# chkconfig –level 235 httpd on
# service mysqld start
# service httpd start
3、准备数据库
准备数据库,和设置权限,安装cacti。
# mysqladmin -uroot -p create cacti
# mysql -uroot -p
mysql>grant all on cacti.* to cactiuser@localhost identified by ‘cactiuser’;
mysql>flush privileges;
mysql>exit
4、安装Cacti
# yum -y install cacti
这里它应该会安装所有依赖的包,具体有哪些不知道了。因为之前配置时,手动装过一些包,用rpm -qa查了下,列出软件包如下,如果以上命令没有装,则手动装下吧
rrdtool
perl-rrdtool
php-cli
php-mysql
php-snmp
net-snmp-libs
php-snmp
net-snmp
net-snmp-devel
net-snmp-utils
这步结束后,它会自动添加cacti系统用户
# grep cacti /etc/passwd
cacti:x:100:101:cacti:/var/www/cacti:/bin/sh
为安全起见,改变cacti的shell
vi /etc/passwd
将
cacti:x:100:101:cacti:/var/www/cacti:/bin/sh
修改为
cacti:x:100:101:cacti:/var/www/cacti:/bin/false
保存退出
还会自动添加计划任务
# cat /etc/cron.d/cacti
*/5 * * * * cacti php /var/www/cacti/poller.php &>/dev/null
我把它注释了,改用root执行
vi /etc/cron.d/cacti
#*/5 * * * * cacti php /var/www/cacti/poller.php &>/dev/null
保存退出
# service cond reload
启动snmpd
# chkconfig –level 235 snmpd on
# service snmpd start
5.导入数据,修改数据连接信息
导入数据信息
# cd /var/www/cacti
# mysql -ucactiuser -pcactiuser cacti < cacti.sql
修改数据库连接信息
# vim /var/www/cacti/include/config.php
$database_type = “mysql”;
$database_default = “cacti”;
$database_hostname = “localhost”;
$database_username = “cactiuser”;
$database_password = “cactiuser”;
$database_port = “3306”;
修改目录的属主
# chown -R cacti.cacti /var/www/cacti/rra /var/www/cacti/log
如果打开浏览器,发现不能显示或者显示禁止访问,请将/var/www/cacti目录的属主设置为运行httpd的用户,如nobody
# chown -R nobody.nobody /var/www/cacti
# chown -R cacti.cacti /var/www/cacti/rra /var/www/cacti/log
如果监控时没有图,或有图没数据,请执行以下命令
# chmod -R 777 /var/www/cacti/rra
# chmod -R 777 /var/www/cacti/log
6、配置httpd服务器的配置文件
# vim /etc/httpd/conf.d/cacti.conf
Alias /cacti/ /var/www/cacti/
<Directory /var/www/cacti/>
DirectoryIndex index.php
Options -Indexes
AllowOverride all
order deny,allow
AddType application/x-httpd-php .php
php_flag magic_quotes_gpc on
php_flag track_vars on
</Directory>
重起httpd的服务,让上面的修改生效
# apachectl graceful
7.测试安装是否正常
打开下面的url.
http://server.ip.or.name/cacti
打开网站,点next.选择new install,使用一路回车法.最后完成
最后的用户名为: admin 密码为: admin
第一次登陆,会强制要求修改密码
8.收尾
让系统每5分钟收集,用root用户去执行这个计划任务
# crontab -e
*/5 * * * * /usr/bin/php /var/www/cacti/poller.php > /dev/null 2>&1
也可手工跑一次:
/usr/bin/php /var/www/cacti/poller.php > /dev/null 2>&1
建立cacti用户,是为了去执行这个计划任务:/usr/bin/php /var/www/cacti/poller.php > /dev/null 2>&1
假如是用root用户去执行,那么是否就没有必要去新建这个用户呢?我想是的,我现在的/var/www/cacti目录下的文件所有者和组就是httpd的运行用户
rra下的rrd文件所有者和组都是root
如果监控设备很多,可以考虑使用spine方式来获取数据。
奇怪,在添加host后,添加图形时,下拉菜单下,看不到添加网卡流量的图,经过一番查找,找到方法
经过摸索,觉得添加图片的过程应该是这样的,纯属猜测
添加数据查询–添加数据源–添加图片
1)、添加查询
Device–选择主机
Associated Data Queries
Add Data Query:选择SNMP – Interface Statistics
Re-Index Method: 选择None
Add
Save
2)、添加Data Sources
Console–Data Sources–Add-
Selected Data Template—选择Interface-Traffic
Host—选择你要监视的主机
create—Inex value 填入网卡名(Index Value)—save
3)、添加图形:
Console–Graph Management–Add–Selected Graph Template(选择Interface)
4)、将被监控主机添加到图形树
Management–Graph Trees–Default Tree–Add–Tree Item Type(选择Host)–Host(选择要添加的Host)–Graph Grouping Style(Graph Template)–可能还需要点击那个有两个++的图片
这时点击graph就会看到新添加的host了
如果监控不到网卡,请参考:
关于cacti监控不到网卡流量
参考文章:
Cacti中文版在Centos5(Rhel5)上的安装
Cacti on CentOS 4.x
Installing RPMforge