入題以前先講講爲何寫這篇文章,這就不得不提起mysql與percona,阿里基於mysql開發了AliSQL,寫這篇文章的時候阿里已經將其開源,percona是一家領先的MySQL諮詢公司,該公司基於mysql開發了Percona Server,Percona Server是一款獨立的數據庫產品,爲用戶提供了換出其MySQL安裝並換入Percona Server產品的能力。percona除了開發了多款數據庫產品,還開發了數據庫監控程序:pmm(Percona Monitoring and Management)服務器,咱們都知道mysql自身缺少實時的監控功能,而此時pmm-server就剛好解決了咱們這一難題,好了廢話很少說,先看一張pmm server的監控圖。mysql
常規的監測項目都有了,最吸引個人一點在於它的慢日誌分析功能,以下圖所示:web
步驟:
好東西固然要分享,下面給出具體操做步驟:
1.在vmware或者virtualbox上安裝ubuntu14.04 Server鏡像,能夠選擇清華大學的鏡像,下載速度快
2.系統裝完後接下來就要在ubuntu上安裝docker了,
執行命令:curl -sSL https://get.daocloud.io/docker | sh,等待完成便可,這是一種安裝docker比較快的方式,並且安裝的docker版本也比較高,安裝完成後輸入docker -v看到下面信息說明安裝完成:
Docker version 17.04.0-ce, build 4845c56
3.安裝完docker,接下來就須要下載pmm server的鏡像,因爲下載國外鏡像速度慢並且網絡不穩定,這裏推薦一箇中科大的開源docker鏡像:
在 Docker 的啓動參數中加入:
--registry-mirror=https://docker.mirrors.ustc.edu.cn
Ubuntu 用戶(包括使用 systemd 的 Ubuntu 15.04)能夠修改 /etc/default/docker 文件,加入以下參數:
DOCKER_OPTS="--registry-mirror=https://docker.mirrors.ustc.edu.cn"
其餘 systemd 用戶能夠經過執行 sudo systemctl edit docker.service 來修改設置, 覆蓋默認的啓動參數:
[Service]
ExecStart=
ExecStart=/usr/bin/docker -d -H fd:// --registry-mirror=https://docker.mirrors.ustc.edu.cn
4.接下來下載pmm鏡像的速度就會大大提高,執行下面命令:
docker pull percona/pmm-server:1.1.3,而後等待完成便可。
5.建立PMM 數據容器:
docker create \
-v /opt/prometheus/data \
-v /opt/consul-data \
-v /var/lib/mysql \
-v /var/lib/grafana \
--name pmm-data \
percona/pmm-server:1.1.3 /bin/true
6.運行PMM server容器:
docker run -d \
-p 80:80 \
--volumes-from pmm-data \
--name pmm-server \
--restart always \
percona/pmm-server:1.1.3
7.安裝PMM客戶端:
wget https://www.percona.com/downloads/pmm-client/pmm-client-1.1.3/binary/debian/trusty/x86_64/pmm-client_1.1.3-1.trusty_amd64.deb
sudo dpkg -i pmm-client_1.1.3-1.trusty_amd64.deb
8.鏈接PMM服務器:
pmm-admin config --server 192.168.111.129(具體填寫PMM服務器安裝機器ip)
9.配置mysql監控:
pmm-admin add mysql --user root -p123456--host 192.168.111.129(填寫mysql安裝機器ip) --port 3306
注:pmm-client收的監控數據來源有這麼幾方面
a.MySQL所在機器的系統指標
b.MySQL的performance_schema庫
c.slow-log(慢查詢日誌--mysql要開啓慢日誌功能)
若是咱們想收集a和c中的指標的話,最好仍是將pmm-client部署在MySQL所在機器
10.驗收:
Component |
URL |
PMM landing page |
http://192.168.100.1 |
Query Analytics (QAN web app) |
http://192.168.100.1/qan/ |
Metrics Monitor (Grafana) |
http://192.168.100.1/graph/
User name:
admin
Password:
admin
|
Orchestrator |
http://192.168.100.1/orchestrator |
注:上面的ip爲pmm服務器的ip
打完收工,但願這篇文章幫到有須要的朋友
參考文章:
1.http://www.tuicool.com/articles/6fAfQ3j
2.https://lug.ustc.edu.cn/wiki/mirrors/help/docker
監控界面如上
pmm-admin 經常使用命令介紹sql
# 添加監控服務 docker
pmm-admin add 數據庫
# 檢查PMM客戶端和PMM服務器之間的網絡鏈接。ubuntu
pmm-admin check-network 服務器
# 配置PMM Client如何與PMM服務器通訊。 網絡
pmm-admin config app
# 打印任何命令和退出的幫助 curl
pmm-admin help
# 打印有關PMM客戶端的信息
pmm-admin info
# 出爲此PMM客戶端添加的全部監控服務
pmm-admin list
# 檢查PMM服務器是否存活
pmm-admin ping
# 檢查PMM服務器是否存活。
pmm-admin purge
# 清除PMM服務器上的度量數據
pmm-admin remove, pmm-admin rm
# 刪除監控服務
pmm-admin repair
# 重啓pmm
pmm-admin restart
# 打印PMM Client使用的密碼
pmm-admin show-passwords
# 開啓監控服務
pmm-admin start
# 中止監控服務
pmm-admin stop
# 在卸載以前清理PMM Client
pmm-admin uninstall