利用Zabbix ODBC monitoring监控SQL Server


1. 创建群组ODBC Templates

 

2. 创建Template SQL Server和Template MySQL

利用Zabbix ODBC monitoring监控SQL Server_第1张图片

 

3. 在Zabbbix上安装unixODBC

shell> yum -y install unixODBC unixODBC-devel

 

4. 在Zabbix上安装对应数据库的unixODBC驱动

unixODBC有一个支持的数据库和驱动列表:

http://www.unixodbc.org/drivers.html

 

对于SQL Server:

 

a) 安装unixODBC驱动

shell> yum install freetds

 

b) 配置unixODBC

我们通过编辑odbcinst.ini和odbc.ini文件来完成ODBC的配置。首先,通过如下命令来验证配置文件的位置:

shell> odbcinst -j

 

可以使用如下命令来查找ODBC驱动的的位置:

shell> find / -name 'libtdsodbc*'

 

在/etc/odbcinst.ini添加SQL Server驱动FreeTDS:

shell> vim /etc/odbcinst.ini

[FreeTDS]

Description = ODBC for SQL Server

Driver = /usr/lib64/libtdsodbc.so.0

Setup = /usr/lib64/libtdsS.so

FileUsage = 1

 

FreeTDS驱动有个命令行工具tsql也可以连SQL Server,它也可一个文件/etc/freetds.conf可以配置连接SQL Server的DSN。

 

SQL Server各版本对应的TDS协议版本:

http://www.freetds.org/userguide/choosingtdsprotocol.htm

 

配置odbc连接信息:

shell> vim /etc/odbc.ini

[szsql01]

Driver = FreeTDS

Server = 192.168.137.6

Port = 1433

Database = DBAdmin

TDS_Version = 8.0

 

这次,我们不在文件里设置用户名密码,而在页面设置。

 

来检查是否驱动看到了你的数据源:

shell> odbcinst -q –s

 

c) 在被监控的SQL Server 2016服务器szsql01上创建用户并授权。

 

d) 在Zabbix上连接数据库测试。

shell> isql -v szsql01 数据库用户名 密码

利用Zabbix ODBC monitoring监控SQL Server_第2张图片

 

e) 在szsql01上安装zabbix 3.2代理。

以管理员方式打开Powershell,下载安装包。

利用Zabbix ODBC monitoring监控SQL Server_第3张图片

解压缩后,将zabbix_agents_3.2.0.win重命名为zabbix,将conf目录下的配置文件拷贝一份到上级目录下,并重命名为zabbix_agentd.conf,编辑并更新以下值。

#Server=[zabbix server ip]

#Hostname=[Hostname of client system]

Server=192.168.137.5

ServerActive=192.168.137.5

Hostname=192.168.137.6

 

注意:Hostname要和创建Host时填写的一样。

 

将zabbix agent安装为服务,并启动服务:

利用Zabbix ODBC monitoring监控SQL Server_第4张图片

检查代理启动的错误日志c:\zabbix_agentd.log,看是否正常。

 

f) 在Zabbix新建的Template SQL Server模板添加监控项

利用Zabbix ODBC monitoring监控SQL Server_第5张图片

 

g) 将被监控服务器szlinux01连接该模板,并查看数据:

clip_p_w_picpath023



参考:

https://www.zabbix.com/documentation/3.4/manual/config/items/itemtypes/odbc_checks