🦄概述
后羿 - TenSunS(原ConsulManager)是一個使用Flask+Vue開發,基於Consul的WEB運維平臺,彌補了Consul官方UI對Services管理的不足;並且基於Consul的服務發現與鍵值儲存:實現了Prometheus自動發現多雲廠商各資源資訊;基於Blackbox對站點監控的視覺化維護;以及對自建與雲上資源的優雅管理與展示。
倉庫地址:https://github.com/starsliao/TenSunS
如何優雅的使用一個mysqld_exporter監控所有的MySQL例項
一、如何在TenSunS中接入雲廠商的資料庫
- 新增雲賬號的情況:目前新增時,支援多選區域,以及選擇增加的資源型別,勾選MySQL即可接入自動同步雲資料庫,記得設定好同步間隔。
- 對已經新增過的賬號,增加同步雲資料庫資源:點選編輯雲資源,選擇好需要編輯的廠商、賬號及區域,再勾選資源型別MySQL,配置上同步間隔即可增加自動同步雲資料庫。
- 接入完成後,可手動點選同步按鈕,完成首次同步;或者等待設定好的同步週期後會自動同步。
- 同步完成後,可在
雲資源管理
-MySQL管理
-雲MySQL列表
,檢視同步的雲資料庫資訊。
二、部署一個支援多例項的Mysqld_exporter
官方main版本的程式碼已經支援多目標的mysqld_exporter,只是還沒有發Releases。所以基於最新的main版本自行編譯了一個mysqld_exporter,並且做成了docker映象。
詳細說明檢視:https://github.com/starsliao/multi_mysqld_exporter
新建一個docker-compose.yml
,內容如下:
version: "3.2"
services:
mysqld_exporter:
image: swr.cn-south-1.myhuaweicloud.com/starsl.cn/mysqld_exporter:latest
container_name: mysqld_exporter
hostname: mysqld_exporter
restart: always
ports:
- "9104:9104"
volumes:
- /usr/share/zoneinfo/PRC:/etc/localtime
environment:
MYSQLD_EXPORTER_PASSWORD: xxxxxxxxxxxxx
entrypoint:
- /bin/mysqld_exporter
- --collect.info_schema.innodb_metrics
- --collect.info_schema.tables
- --collect.info_schema.processlist
- --collect.info_schema.tables.databases=*
- --mysqld.username=xxxxxxxxxx
- docker-compose中有2個變數:監控專用的mysql賬號和密碼,注意修改掉後再啟動。
- docker-compose配置方式是所有的mysql例項都配置了一樣的mysql監控賬號和密碼。
- 如果你有不同mysql例項需要配置不同監控賬號密碼的需求,請參考官方readme使用配置檔案的方式啟動。
啟動:docker-compose up -d
三、如何接入到Prometheus
點選選單雲資源管理
-MySQL管理
-prometheus配置
在右側選擇需要加入監控的雲賬號RDS組,並且輸入mysqld_exporter的IP和埠,點選生成配置,即可複製生成的JOB內容到prometheus。
四、參考告警規則
五、參考Grafana看板
GRAFANA:Mysqld Exporter Dashboard 22_11_01中文版