Cacti 0.8.8b 成功监控mssql 2005
类别:原创 服务器本文参考
第一:说明
目的:本机前提是已安装好了cacti 0.8.8b 并正常工作,本文档主要配置cacti插件并启用邮件短信告警。
其它说明: cacti 0.8.8b的安装请参考我的其它博客文章《Cacti 0.8.8b 安装配置(含snmp配置) 》http://jedy82.blog.运维网.com/425872/1569689
本文在此基础上配置
Cacti服务器ip:192.168.10.112,mssql服务器ip:192.168.1.4
cacti 使用yum方式安装,默认路径为/usr/share/cacti
第二:本例操作环境
# yum update -y
# uname -a
Linux i-tcz0hdhc 2.6.32-431.29.2.el6.x86_64 #1 SMP Tue Sep 9 21:36:05 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
# more /etc/redhat-release
CentOS release 6.6 (Final)
#
第三:必须组件的安装
1、 说明
由于windows sql server 2005 本身不支持snmp。所以要想使用cacti 监控mssql,我们只能通过php连接mssql 2005,获取sql 2005的性能计数器的值。
php连接mssql最常用的方法是使用freetds工具。cacti 服务器上必须安装php-mssql 驱动。
2、 安装freetds和php-mssql
# yum install freetdsphp-mssql -y
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
* base: mirrors.yun-idc.com
* epel: mirrors.yun-idc.com
* extras: mirrors.yun-idc.com
* rpmfusion-free-updates: mirror.bjtu.edu.cn
* rpmfusion-nonfree-updates: mirror.bjtu.edu.cn
* updates: mirrors.yun-idc.com
Package freetds-0.91-2.el6.x86_64 already installed and latest version
Package php-mssql-5.3.3-3.el6.x86_64 already installed and latest version
Nothing to do
#
freetds安装完成后 不需要配置,重启httpd服务后能在phpinfo页面看到php支持mssql了
http://jedy82.blog.运维网.com/attachment/201410/31/425872_1414735191KQtX.png
3、 测试mssql的连接
注意防火墙的设置
# vi test_mssql_connect.php
# more test_mssql_connect.php
# php -q test_mssql_connect.php
success
#
#
第四:监控脚本配置
Cacti官方模板下载地址:http://docs.cacti.net/templates
Sql server 模板官方安装文档:http://docs.cacti.net/usertemplate:host:microsoft:sqlserver
将http://docs.cacti.net/_media/usertemplate:host:microsoft:cacti087e-mssql-host_template.tgz 下载到本地。解压后得到4个文件夹。
1、 在sql server 上新增监控用户
将解压后的sql scripts\sql_server_2005-2008.sql中的内容导入到sql server2005 中。其中的cactistats和CHANGEME分别是新增用户的用户名和密码。可以自行修改。如果此处修改了,下面几行也要做相应修改。之后的ss_win_mssql.php文件中的相应位置也要修改。
http://jedy82.blog.运维网.com/attachment/201410/31/425872_1414735191rGcD.png
成功执行后在会在sql server 上增加一个名为:cactistats密码为:CHANGEME的用户。
http://jedy82.blog.运维网.com/attachment/201410/31/425872_1414735191YbMY.png
2、 测试监控用户连接
新建测试文件
# vi test_dm_os_performance_counters.php
# more test_dm_os_performance_counters.php
# php test_dm_os_performance_counters.php
connent MSSQL succeedArray
(
=> 644
=> 644
)
#
3、 添加监控脚本
将解压后的scripts\ss_win_mssql.php上传到cacti服务器的cacti目录下的scripts/下,并赋予权限
#
# cd /usr/share/cacti/scripts/
# chmod 755 ss_win_mssql.php
#
官方文档中有如下的一段话:“I use MemCached to speed up the polling process so the code is setup to use it. If you choose not to, comment out (or delete) lines 24-29 and 72-73
You'll need to install the MemCached service as well as the PHP libraries which should be available through PECL”。大致意思就是说,ss_win_mssql.php中默认使用的是memcached来取mssql的数据,如果没有安装或是不使用memcached的话。需要将memcached有关的行注释掉。否则无法取到mssql的数据。
我这里没有安装memcached。所以这相关内容注释。
# cd /usr/share/cacti/scripts/
# vi ss_win_mssql.php
# more ss_win_mssql.php
页:
[1]