利用Zabbix ODBC monitoring监控MySQL
利用Zabbix ODBC monitoring监控MySQL
1. 创建群组ODBC Templates
2. 创建Template SQL Server和Template MySQL
3. 在Zabbbix上安装unixODBC
1
|
shell> yum -y install unixODBC unixODBC-devel
|
4. 在Zabbix上安装对应数据库的unixODBC驱动
unixODBC有一个支持的数据库和驱动列表:
http://www.unixodbc.org/drivers.html
对于MySQL:
a) 安装unixODBC驱动
1
|
shell> yum install mysql-connector-odbc
|
b) 配置unixODBC
我们通过编辑odbcinst.ini和odbc.ini文件来完成ODBC的配置。首先,通过如下命令来验证配置文件的位置:
1
|
shell> odbcinst -j |
odbcinst.ini用于列出已经安装的ODBC数据库驱动:
[mysql]
Description = ODBC for MySQL
Driver = /usr/lib/libmyodbc5.so
参数详解:
属性 |
描述 |
mysql |
数据库驱动名称 |
Description |
数据库驱动描述 |
Driver |
数据库驱动库位置 |
可以使用如下命令来查找ODBC驱动的的位置:
1
|
shell> find / -name 'lib*odbc*.so'
|
odbc.ini用于定义数据库源:
[szlinux01]
Description = MySQL database szlinux01
Driver = mysql
Server = 192.168.137.3
User = zabbix
Password = [email protected]#123
Port = 3306
Database = DBAdmin
参数详解:
属性 |
描述 |
Test |
数据源名称(DSN) |
Description |
数据源描述 |
Driver |
在odbcinst.ini中指定的数据库驱动名称 |
Server |
数据库服务器IP/DNS |
User |
用于连接的数据库用户 |
Password |
数据库用户密码 |
Port |
数据库连接端口 |
Database |
数据库名称 |
c) 在被监控服务区szlinux01上创建用户并授权:
1
2
|
mysql> flush privileges ;
|
我这边创建了一个DBAdmin库,用于存储一些自定义的性能和业务监控数据。例如,统计某个业务库的数据大小和表行数。
1
|
SELECT TABLE_NAME,DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS FROM INFORMATION_SCHEMA.TABLES;
|
d) 在Zabbix服务器unixODBC包中有一个isql工具,我们用来验证正常:
1
|
shell> isql szlinux01 |
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
e) 在Zabbix新建的Template MySQL模板添加监控项
你必需指定的数据库监控项:
类型 |
这里选择数据库监控 |
键值 |
输入db.odbc.select[unique_description,data_source_name],这里的唯一描述用于在触发器识别监控项。 数据源名称必需被设置为odbc.ini中的。 |
用户名称 |
输入数据库用户名(如果用户名已经在odbc.ini设置,则不用) |
密码 |
输入数据库用户密码(如果密码已经在odbc.ini设置,则不用) |
SQL查询 |
输入SQL查询 |
信息类型 |
要知道查询返回的数据类型,从而选择正确的类型。如果使用不正确的信息类型,监控项将变为不支持。 |
f) 将被监控服务器szlinux01连接该模板,并查看数据:
参考:
https://www.zabbix.com/documentation/3.4/manual/config/items/itemtypes/odbc_checks
本文转自UltraSQL51CTO博客,原文链接: http://blog.51cto.com/ultrasql/1927671,如需转载请自行联系原作者