使用Prometheus+Grafana监控MySQL
你還不會監控服務器資源嗎?你還不會監控mysql性能嗎?但是你看了這篇文章之后我想你應該會了,哈哈哈,就算不會,至少你也知道是個怎么回事,這篇文章就來介紹怎么給自己的服務器系統搭建一個監控平臺,要是還不會,請私聊我,哈哈!!!
一、介紹Prometheus
Prometheus(普羅米修斯)就是一個時序數據庫,多了我也不清楚,先記著這么回事,就是用來存數據的。哈哈哈(前段時間我用influxdb這個時序數據庫,不過這個呢是針對于jmeter來監控的,不好做mysql的監控,而Prometheus是專門用來監控數據庫的。如果有興趣的朋友,我過段時間寫一篇influxdb+jmeter+grafana,今天主講prometheus)我相信做過性能測試的人員和運維人員都知道這個吧,哈哈哈
二、grafana
grafana其實就是一個展示數據的平臺,能夠實時監控還好看,我喜歡。
三、下面介紹如何使用Prometheus和Grafana對MySQL服務器性能進行監控。
我們用到了以下兩個exporter:
node_exporter – 用于機器系統數據收集
mysqld_exporter – 用于MySQL服務器數據收集
四、邏輯梳理
我們通過node_exporter對linux服務器數據收集、mysqld_exporter對mysql服務器數據收集,收集到之后傳到prometheus數據庫里面去,然后通過prometheus去關聯grafana,再去把實時數據展示出來。好了,話不多說,我們從第一步開始。
在開始之前要先把node_exporter、mysqld_exporter、prometheus壓縮包給下載好,你們可以去官網下載也可以我分享給你們
鏈接:https://pan.baidu.com/s/187QTTxjxsL6GB303tV-cEQ
提取碼:pt7a
這邊的話我是在自己本地LINUX虛擬機操作的,你們自己在練習的時候也可以現在自己的虛擬機上先搭建一下,然后再到服務器上去玩吧。
**
- 第一步:數據庫操作
**
要是不知道服務器的mysql安裝路徑在哪里,可以敲下面這個指令
上面就是我虛擬機mysql的安裝路徑
好了,我們第一步先啟動mysql數據庫
這樣的話就啟動成功了,然后我們進入mysql的bin目錄
輸入./mysql -uroot -p
輸入密碼,如果沒修改的話就是默認空的,直接回車就好了,如果修改過的話就輸入修改后的密碼回車
到了這個頁面就說明進來了
輸入 use mysql
然后去創建一個你的數據庫賬號,為什么要創建你自己的,而不用root的呢,我們以防萬一哈,還是不要去弄root賬號去玩
輸入下面命令,賬號可以自行設定,我這是輸入的hfx,我名字的第一個字母
GRANT ALL PRIVILEGES ON *.* TO 'hfx'@'localhost' identified by '123456';創建好了之后刷新一下
flush privileges;然后驗證一下是否創建成功
select user,host from mysql.user;
這是我剛才創建的賬號,好了,數據庫就先到這里
**
- 第二步:Prometheus 搭建
**
你們可以自行下載,也可以用我百度網盤的
如果用我百度網盤的,你下載好之后直接用xftp傳到指定的linux某個目錄下就好了,我這邊是傳到tools目錄下
然后解壓
tar -xzvf prometheus-2.15.2.linux-amd64.tar.gz
解壓完成后就會出現一個文件夾,樓主有強迫癥喜歡安裝完成之后把安裝包給刪除,你喜歡的話就rm -rf 刪掉吧,哈哈哈
不僅給他刪除,我還要把解壓好的文件給改個名字,名字太長了看起來不舒服,哈哈哈
然后呢,需要修改一下他的配置文件
配置文件:vi prometheus.yml
這個是它的配置文件,可以修改端口等信息,默認端口為 9090
上圖是沒有配置的,我們把下面內容添加到里面去
-job_name: ‘linux’
static_configs:
-targets: [‘localhost:9100’]
-job_name: ‘mysql’
static_configs:
-targets: [‘localhost:9104’]
編輯好之后命令模式下:wq保存并退出
設置端口:
firewall-cmd --list-ports ##列出開放的端口
firewall-cmd --add-port=9090/tcp --permanent #永久添加 9090 端口
firewall-cmd --add-port=9100/tcp --permanent #永久添加 9100 端口
firewall-cmd --add-port=9104/tcp --permanent #永久添加 9104 端口
firewall-cmd --list-ports #列出開放的端口
systemctl stop firewalld #關閉防火墻
systemctl start firewalld #開啟防火墻
systemctl status firewalld #查看防火墻狀態
systemctl restart firewalld #重啟防火墻
先把防火墻打開
systemctl start firewalld然后輸入以下命令
firewall-cmd --add-port=9090/tcp --permanentfirewall-cmd --add-port=9100/tcp --permanentfirewall-cmd --add-port=9104/tcp --permanent永久開放這些端口
然后輸入
查看開放的端口
上圖是我虛擬機所開放的端口,端口開放不了,先檢查防火墻
端口開放后輸入以下指令
然后再去windows(mac)電腦打開瀏覽器輸入虛擬機的ip:9090/targets
好了我們開始下一步
- mysqld_exporter 搭建
這個的話我就不一一講了哦,直接把我的安裝包拖到你指定的文件夾,我是拖到tools目錄下的,然后解壓,上一步我已經說過了,這種傻瓜式的安裝下載解壓我就不說了哦
然后在/usr/local/tools/mysql_exporter 下創建一個my.cnf 配置文件,寫上創建的用戶名和密碼
直接輸入vi my.cnf
這里的話寫上你之前創建的數據庫賬戶和密碼,寫root也行,看你吧
然后保存退出
然后在剛才那個路徑下輸入
我這里之前啟動了一個,最下面一行提示說已經有一個進程了在運行了,我得去殺掉重新起一個給你們看看
好了,出現這樣的就是正常的。
如果想查看端口占用情況
#yum install lsof
查看 9104 端口占用情況 lsof -i:9104
查看進程 #ps -a
關閉進程 #kill -9 進程號
這樣子去操作就好了 我就不做演示了哦
我們繼續下一步
**
- Node_exporter 監控 linux
**
然后解壓壓縮包進入安裝文件目錄下輸入
出現這樣的就是啟動成功啦
然后去windows(mac)瀏覽器輸入虛擬機的ip:9090/targets
出現這個界面然后三個狀態全部是up就表示成功了
如果是DOWN,久去檢查一下是否全部開啟了,如果開啟了還是沒有就去殺掉進程重新開。
我們繼續下一個
**
- 安裝Grafana
**
- Grafana 1.1 下載與安裝
- wgethttps://dl.grafana.com/oss/release/grafana-6.5.1-1.x86_64.rpm
安裝 grafana 報 urw-fonts is needed by grafana-xxxx ,
則需要安裝字體。
即:
啟動 grafana
systemctl start grafana-server
啟動之后打開windows(mac)瀏覽器去訪問
http://部署的ip:3000
然后就出現這個grafana界面了,記住一定要關閉防火墻,我們之前是開啟防火墻的
輸入systemctl stop firewalld
關閉防火墻,然后再去瀏覽器訪問哦
好了,這篇文章我就先介紹到這里吧,下一篇再繼續介紹grafana的使用
你們自己去操作的話,只要到了這一步,就算是平臺已經搭建好了
我再給你們透一點點,吸引你們一下哈哈哈
這是grafana展示的監控linux服務器的資源各項指標,是不是很好看,不僅可以監控mysql還可以監控linux服務器,多臺都是可以的。
好了,不說了,我累了,碼字碼的好辛苦啊,點個關注,等待持續更新~~~
總結
以上是生活随笔為你收集整理的使用Prometheus+Grafana监控MySQL的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谷歌聘请 macOS 老兵操盘新操作系统
- 下一篇: mysql 交换 表分区_mysql分区