Zabbix 5.0.0beta1體驗1- MySQL監控
距離上次釋出文章已經有幾個月時間,最近復工事情較多,耽誤了一段時間。回頭一看 zabbix5.0beta1 版本已經發布了!下面介紹一下新版本的功能。5.0 目前並未正式釋出,切勿使用在生產環境!!!
一.新功能介紹
1.介面展示細化
5.0 版本開始調整為左側選單,配置和檢視的部分從功能上進行了分離,更加直觀Monitoring 選單下 Hosts,可直觀看到主機的狀態Configureation 選單下可對主機等資源進行配置操作圖形檢視
2.Agent2 整合外掛
Agent2 使用 go 語言編寫,其中已經內建了很多元件的監控 官方還發布了外掛的開發教程,二次開發更加靈活 其他功能太多,不便於一一解釋,後期再給大家詳細講解。看完上面新功能,下面為大家介紹新版本的實用功能 MySQL 監控
二.Mysql 監控
MySQL 作為使用最廣泛的資料庫,使用 Zabbix 監控 MySQL 一直是一個長期的話題,教程更是多如牛毛,之前我也寫過一個監控 MySQL 的小元件Zabbix 監控 MySQLZabbix5.0 已經內建了 MySQL 監控,使用極為方便。
1.安裝 Zabbix Agent2
Zabbix Server 安裝和之前並無區別,直接編譯安裝即可 目前階段,使用原始碼編譯安裝 Agent2,編譯需要 gcc,go 語言環境。 配置 go 語言環境,以 centos7.6 作業系統為例子 下載 go 安裝包
wget https://dl.google.com/go/go1.14.2.linux-amd64.tar.gz tar zxvf go1.14.2.linux-amd64.tar.gz -C /usr/local/
配置環境變數,修改/etc/profile 末尾新增
export GOROOT=/usr/local/go
export GOPATH=/home/mygo
export PATH=$PATH:/usr/local/go/bin:/usr/local/zabbix/bin:/usr/local/zabbix/sbin
使環境變數生效
source /etc/profile
配置 GoProxy
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
下載 Zabbix 5.0.0beta1 原始碼並編譯安裝,安裝過程需要聯網下載依賴包
wget https://cdn.zabbix.com/development/5.0.0beta1/zabbix-5.0.0beta1.tar.gz tar zxvf zabbix-5.0.0beta1.tar.gz cd zabbix-5.0.0beta1 ./configure --prefix=/usr/local/zabbix --enable-agent2 make make install
配置安裝 Zabbix Agent2
配置與之前的 Agent 的配置沒有太大區別,基本通用 修改配置檔案 zabbix_agent2.conf
Server=172.16.66.9
ServerActive=172.16.66.9
Hostname=jenkins43
172.16.66.9 為 Zabbix ServerIP Hostname 可配置為伺服器主機名 使用以下命令啟動 Agent2
nohup /usr/local/zabbix/sbin/zabbix_agent2 -c /usr/local/etc/zabbix_agent2.conf > myout.file 2>&1 &
Agent2 可安裝在被監控 MySQL 主機上,也可以安裝在其他機器,使用遠端連線 MySQL 的方法進行監控,本次使用遠端連線方式實現,環境如下
主機 | 安裝元件 |
---|---|
172.16.66.43 | Zabbix Agent2 |
172.16.66.9 | MySQL |
使用以下命令在被監控 MySQL 裡建立獨立監控使用者並授權遠端訪問,避免使用業務使用者
create user mon@'172.16.66.43' identified by 'monpwd123';
Agent2 沒有依賴包,可直接拷貝二進位制檔案 zabbix_agent2 和配置檔案 zabbix_agent2.conf 到目標機器,即可完成安裝
Zabbix Server 配置
在 Zabbix Server 上新增主機,並關聯 MySQL 模版,注意使 By Agent2 模版並新增以下三個巨集變數
{$MYSQL.DSN} mysql的連線串,可使用TCP和Unix
tcp://myhost 或 unix:/var/run/mysql.sock
{$MYSQL.USER} mysql使用者
{$MYSQL.PASSWORD} 對應的使用者密碼
這裡這配置剛才建立好的 MySQL 使用者資訊
效果
Last Data圖形 1圖形 2
結語
Zabbix 5.0 還有眾多功能,配置和監控更加簡單靈活。使用 Agent2 使用 go 編寫,減低了二次開發的門檻,後續會發布外掛開發文章,期待正式版本釋出。