利用Zabbix ODBC monitoring监控MySQL
利用Zabbix ODBC monitoring監(jiān)控MySQL
?
1. 創(chuàng)建群組ODBC Templates
?
2. 創(chuàng)建Template SQL Server和Template MySQL
?
?
3. 在Zabbbix上安裝unixODBC
| 1 | shell>?yum?-y?install?unixODBC?unixODBC-devel |
?
4. 在Zabbix上安裝對應(yīng)數(shù)據(jù)庫的unixODBC驅(qū)動
unixODBC有一個支持的數(shù)據(jù)庫和驅(qū)動列表:
http://www.unixodbc.org/drivers.html
?
對于MySQL:
?
a) 安裝unixODBC驅(qū)動
| 1 | shell>?yum?install?mysql-connector-odbc |
?
b) 配置unixODBC
我們通過編輯odbcinst.ini和odbc.ini文件來完成ODBC的配置。首先,通過如下命令來驗證配置文件的位置:
| 1 | shell>?odbcinst?-j |
odbcinst.ini用于列出已經(jīng)安裝的ODBC數(shù)據(jù)庫驅(qū)動:
[mysql]
Description = ODBC for MySQL
Driver = /usr/lib/libmyodbc5.so
?
參數(shù)詳解:
| 屬性 | 描述 |
| mysql | 數(shù)據(jù)庫驅(qū)動名稱 |
| Description | 數(shù)據(jù)庫驅(qū)動描述 |
| Driver | 數(shù)據(jù)庫驅(qū)動庫位置 |
?
可以使用如下命令來查找ODBC驅(qū)動的的位置:
| 1 | shell>?find?/?-name?'lib*odbc*.so' |
?
odbc.ini用于定義數(shù)據(jù)庫源:
[szlinux01]
Description = MySQL database szlinux01
Driver = mysql
Server = 192.168.137.3
User = zabbix
Password = ABCabc!@#123
Port = 3306
Database = DBAdmin
?
參數(shù)詳解:
| 屬性 | 描述 |
| Test | 數(shù)據(jù)源名稱(DSN) |
| Description | 數(shù)據(jù)源描述 |
| Driver | 在odbcinst.ini中指定的數(shù)據(jù)庫驅(qū)動名稱 |
| Server | 數(shù)據(jù)庫服務(wù)器IP/DNS |
| User | 用于連接的數(shù)據(jù)庫用戶 |
| Password | 數(shù)據(jù)庫用戶密碼 |
| Port | 數(shù)據(jù)庫連接端口 |
| Database | 數(shù)據(jù)庫名稱 |
?
c) 在被監(jiān)控服務(wù)區(qū)szlinux01上創(chuàng)建用戶并授權(quán):
| 1 2 | mysql>?grant?usage,select?on?*.*?to?'zabbix'@'%'?identified?by?'ABCabc!@#123'; mysql>?flush?privileges; |
?
我這邊創(chuàng)建了一個DBAdmin庫,用于存儲一些自定義的性能和業(yè)務(wù)監(jiān)控數(shù)據(jù)。例如,統(tǒng)計某個業(yè)務(wù)庫的數(shù)據(jù)大小和表行數(shù)。
| 1 | SELECT?TABLE_NAME,DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS?FROM?INFORMATION_SCHEMA.TABLES; |
?
d) 在Zabbix服務(wù)器unixODBC包中有一個isql工具,我們用來驗證正常:
| 1 | shell>?isql?szlinux01 |
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
?
e) 在Zabbix新建的Template MySQL模板添加監(jiān)控項
?
你必需指定的數(shù)據(jù)庫監(jiān)控項:
| 類型 | 這里選擇數(shù)據(jù)庫監(jiān)控 |
| 鍵值 | 輸入db.odbc.select[unique_description,data_source_name],這里的唯一描述用于在觸發(fā)器識別監(jiān)控項。 數(shù)據(jù)源名稱必需被設(shè)置為odbc.ini中的。 |
| 用戶名稱 | 輸入數(shù)據(jù)庫用戶名(如果用戶名已經(jīng)在odbc.ini設(shè)置,則不用) |
| 密碼 | 輸入數(shù)據(jù)庫用戶密碼(如果密碼已經(jīng)在odbc.ini設(shè)置,則不用) |
| SQL查詢 | 輸入SQL查詢 |
| 信息類型 | 要知道查詢返回的數(shù)據(jù)類型,從而選擇正確的類型。如果使用不正確的信息類型,監(jiān)控項將變?yōu)椴恢С帧?/p> |
?
f) 將被監(jiān)控服務(wù)器szlinux01連接該模板,并查看數(shù)據(jù):
參考:
https://www.zabbix.com/documentation/3.4/manual/config/items/itemtypes/odbc_checks
本文轉(zhuǎn)自UltraSQL51CTO博客,原文鏈接:?http://blog.51cto.com/ultrasql/1927671,如需轉(zhuǎn)載請自行聯(lián)系原作者
總結(jié)
以上是生活随笔為你收集整理的利用Zabbix ODBC monitoring监控MySQL的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vsphere入门之高可用性和双机热备
- 下一篇: 清理你入侵后的痕迹