隨著Zabbix agent2的發布,監控數據庫似乎變得簡單了許多,只需要輸入DSN、用戶名、密碼就可以監控,但是并不是所有的數據庫都支持裝插件,所以ODBC這種方式依然有用,但從另外一個角度來看,如果公司沒有專線前往公有云,那么數據庫需要開啟對外訪問,隱藏了一些額外的安全風險,所以監控之前可以斟酌再三是否有必要,很多的公有云的自有監控也做的不錯。
正文
環境
- Zabbix版本:5.2.6
- 數據庫:Mariadb 10.4.13
- 數據庫所在平臺:AWS(海外)
AWS操作
AWS需要注意兩個點,一個是對外開放,另外一個是安全組。
這里要選擇是
安全組放行公網IP,放通3306即可
Zabbix Server操作
在terminal telnet終端節點域名看是否OK,如下圖二
復制終端節點域名
telnet該域名看是否OK
確定測試沒問題后,開始預裝odbc驅動,由于自帶的驅動無法登錄到mariadb,所以需要安裝相對應的驅動。
- dnf -y install mariadb-connector-odbc
- 如果是mysql v8版本,則需要安裝官方源
- rpm -ivh https://repo.mysql.com//mysql80-community-release-el8-1.noarch.rpm
- dnf update mysql80-community-release
- dnf -y install mysql-connector-odbc
CentOS目前是自帶odbc連接器的,如果沒有請提前安裝ODBC,包名叫unix-odbc
此時先看驅動清單。
- vi /etc/odbcinst.ini
找到之后記住驅動名稱,前往ODBC連接器編輯列表,這里寫法和MSSQL有點區別,首行是DSN,下面的driver是odbcinst.ini里的驅動名稱,然后接著是server的IP/域名,端口號。
做完之后,開始測試。
- isql kasar 用戶名 密碼 -v
Zabbix前端操作
在添加主機時,需要注意的是主機IP為域名,如下圖一所示,完整地如下面3副圖。
填寫主機名為域名
添加ODBC的模板
填寫相關宏
效果
數據獲取正常
出圖正常
寫在最后
通過ODBC這種方式其實也很靈活,也可以自帶sql腳本去監控相對應的指標,隨著云廠商對于監控的重視,可視化程度越來越高,所以很多需求不大的人其實并不關注數據庫監控的內容,但始終有一點定制化確實是很難的,想要添加指標除非是比較公開化,普遍需求,否則需要二次定制開發,這也是自己監控的一個好處,仁者見仁,智者見智,總之適合自己的才是最好的。
原文鏈接:https://www.toutiao.com/i6965813057792557607/