最近闲的无聊,亲手操刀了一把整个生产环境cacti的搭建,时间消耗了3-4天,这里主要感谢网友老李、不想扮演逃兵、jiam的指导和帮助。下面就说说我搭建这个遇到的一些棘手的问题吧!
搭建完成的界面如下图:
系统环境:RedHat4.8
软件环境:Mysql+Apache+php都是基于系统自带的,因为个人比较懒,安装系统的时候把所有软件包都安装了。感觉这样比较方便。
rrdtool-1.2.27
cacti-0.8.6
整个搭建过程还是比较简单,LAMP搭建就不用多说了,如果我没记错的话,主要修改了httpd.conf文件,增加了如下一行
AddType application/x-httpd-php .php
主要是rrdtool安装、cacti及mysql授权那块下面几步:
tar zxv rrdtool-1.2.27
./configure --prefix=/usr/local/rrdtool
make
make install
解压cacti
tar zxvf cacti-version.tar.gz
建立cacti用的mysql库
mysqladmin --user=root create cacti
mysql cacti mysql授权
mysql --user=root mysql
GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactiuser';
flush privileges;
修改include/config.php连接mysql的使用者、密码等。修改如下所示:
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "cactiuser";
新增cactiuser用户
useradd -r -M cactiuser
将cacti目录拷贝到apache发布目录下,我这里默认就是/var/www/html目录下
cp -r cacti-0.8.6 /var/www/html/cacti
设定rra和log目录的属主为cactiuser
cd /var/www/html/cacti
chown -R cactiuser rra/ log/
新增定时任务采集数据
*/5 * * * * php /var/www/html/cacti/poller.php > /dev/null 2>&1
安装基本就完成了
访问url地址http://ip/cacti
根据提示一步一步安装直到登录系统里
问题一、
计划任务开的,LAMP也没问题,snmpwalk命令取数据也是OK的。但是rra目录下没有任何rrd结尾的文件,cacti.log也是空,界面上图片显示X,当然也无数据
经过咨询网又老李,修改安装时指定的/usr/local/rrdtool的路径改为/usr/local/rrdtool/bin/rrdtool后,主界面仍然显示X,但是点X进去后可以看到数据。网上一顿查询后无结果,无奈之下更换一个cacti版本,更换版本为0.8.6b。
问题二、
更换版本后,用的ucd/net SNMP Host模版后没有监控网卡流量。无奈继续换版本。
问题三、
继续更换版本为最新版本0.8.8a后,访问url时提示连接mysql数据库有问题。再换版本为0.8.7h。
问题四、
更换后0.8.7h版本后,执行/usr/bin/php /var/www/html/cacti/poller.php --force,提示如下错误:
经过牛人的指导将poller.php文件定义的log_cacti_stats函数移到文件上部,再次执行报错消失。
问题五、
监控本机数据有了,但是windows客户端,监控机需要导入一个模版文件,被监控机需要安装snmp和informant-std-16.zip软件,并设置snmp的属性,增加public团体名和监控
机的IP地址,不安装informant-std-16.zip软件的话,添加监控机绘图时出现如下界面:
正常应该如下图:
问题六、
windows客户端是监控好了 ,但是我linux客户端所有机器的数据文件都未刷新,点击console-System Utilites-Rebulid Poller Cache,再手动执行计划任务强制刷新后问题解决。
/usr/bin/php /var/www/html/cacti/poller.php --force
搭建完成的界面如下图:
系统环境:RedHat4.8
软件环境:Mysql+Apache+php都是基于系统自带的,因为个人比较懒,安装系统的时候把所有软件包都安装了。感觉这样比较方便。
rrdtool-1.2.27
cacti-0.8.6
整个搭建过程还是比较简单,LAMP搭建就不用多说了,如果我没记错的话,主要修改了httpd.conf文件,增加了如下一行
AddType application/x-httpd-php .php
主要是rrdtool安装、cacti及mysql授权那块下面几步:
tar zxv rrdtool-1.2.27
./configure --prefix=/usr/local/rrdtool
make
make install
解压cacti
tar zxvf cacti-version.tar.gz
建立cacti用的mysql库
mysqladmin --user=root create cacti
mysql cacti mysql授权
mysql --user=root mysql
GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactiuser';
flush privileges;
修改include/config.php连接mysql的使用者、密码等。修改如下所示:
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "cactiuser";
新增cactiuser用户
useradd -r -M cactiuser
将cacti目录拷贝到apache发布目录下,我这里默认就是/var/www/html目录下
cp -r cacti-0.8.6 /var/www/html/cacti
设定rra和log目录的属主为cactiuser
cd /var/www/html/cacti
chown -R cactiuser rra/ log/
新增定时任务采集数据
*/5 * * * * php /var/www/html/cacti/poller.php > /dev/null 2>&1
安装基本就完成了
访问url地址http://ip/cacti
根据提示一步一步安装直到登录系统里
问题一、
计划任务开的,LAMP也没问题,snmpwalk命令取数据也是OK的。但是rra目录下没有任何rrd结尾的文件,cacti.log也是空,界面上图片显示X,当然也无数据
经过咨询网又老李,修改安装时指定的/usr/local/rrdtool的路径改为/usr/local/rrdtool/bin/rrdtool后,主界面仍然显示X,但是点X进去后可以看到数据。网上一顿查询后无结果,无奈之下更换一个cacti版本,更换版本为0.8.6b。
问题二、
更换版本后,用的ucd/net SNMP Host模版后没有监控网卡流量。无奈继续换版本。
问题三、
继续更换版本为最新版本0.8.8a后,访问url时提示连接mysql数据库有问题。再换版本为0.8.7h。
问题四、
更换后0.8.7h版本后,执行/usr/bin/php /var/www/html/cacti/poller.php --force,提示如下错误:
经过牛人的指导将poller.php文件定义的log_cacti_stats函数移到文件上部,再次执行报错消失。
问题五、
监控本机数据有了,但是windows客户端,监控机需要导入一个模版文件,被监控机需要安装snmp和informant-std-16.zip软件,并设置snmp的属性,增加public团体名和监控
机的IP地址,不安装informant-std-16.zip软件的话,添加监控机绘图时出现如下界面:
正常应该如下图:
问题六、
windows客户端是监控好了 ,但是我linux客户端所有机器的数据文件都未刷新,点击console-System Utilites-Rebulid Poller Cache,再手动执行计划任务强制刷新后问题解决。
/usr/bin/php /var/www/html/cacti/poller.php --force