|
四、安装spine
Cacti 获取主机信息的方式有两种,系统默认是选择cmd 模式,还有一种方式是Spine ,这种方法是基于C语言的,非常快速的轮询引擎,效率比cmd 高很多。
(1)安装Spine依赖包
[iyunv@cacti rra]# yum install openssl-devel mysql-devel net-snmp-devel
(2)源码安装Spine
[iyunv@cacti ~]# tar zxvf cacti-spine-0.8.8a.tar.gz
[iyunv@cacti cacti-spine-0.8.8a]# ./configure --with-mysql=/usr/local/mysql/
[iyunv@cacti cacti-spine-0.8.8a]# make && make install
(3)Spine的配置文件spine.conf
[iyunv@cacti ~]# cd /usr/local/spine/etc/
[iyunv@cacti etc]# mv spine.conf.dist spine.conf
[iyunv@cacti etc]# vim spine.conf
DB_Host localhost
DB_Database cacti
DB_User cacti
DB_Pass cacti
DB_Port 3306
DB_PreG 0
注意:这个版本的spine默认使用/tmp/mysqld.sock登陆MySQL。而我的LNMP环境在编译MySQL时指定的为/tmp/mysql.sock。这时候可以用软链接的方法解决,也可以在spine.conf文件中指定sock文件,也就是修改DB_Host值为 mysql.sock文件的位置。
[iyunv@cacti tmp]# cd /usr/local/spine/bin/
[iyunv@cacti bin]# ./spine
出现下面类似信息,说明没有问题:
Poller[0] Time: 2.1460 s, Threads: 1, Hosts: 4
这里有一个报错:
[iyunv@cacti tmp]# cd /usr/local/spine/bin/
[iyunv@cacti bin]# ./spine
./spine: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
如我的mysql安装在/usr/local/mysql下
/usr/local/mysql/lib/libmysqlclient.so.18
[iyunv@cacti bin]#vim /etc/ld.so.conf
增加一行 /usr/local/mysql/lib/
然后执行ldconfig生效即可
再次执行./spine 可以看到:
[iyunv@cacti bin]# ./spine
SPINE: Using spine config file [../etc/spine.conf]
SPINE: Version 0.8.8a starting
SPINE: Time: 0.1962 s, Threads: 1, Hosts: 3
(4)在console 配置spine
“Setting”-->“Paths”-->“Spine Poller File Path”填写:/usr/local/spine/bin/spine;并“Save”
“Setting”-->“Poller”下修改Poller Type为Spine;并“Save”
|
|