摘要:監(jiān)控和管理概述監(jiān)控和管理是一個(gè)用于管理和監(jiān)控和性能的開源平臺(tái)。是收集性能指標(biāo)的。刪除數(shù)據(jù)容器升級(jí)服務(wù)器先停再刪,如果如要保留收集數(shù)據(jù),不要執(zhí)行此操作在和上安裝客戶端客戶端是安裝在您要監(jiān)視的或主機(jī)上的一組代理和出口商。
Percona監(jiān)控和管理概述
Percona監(jiān)控和管理架構(gòu)Percona監(jiān)控和管理(PMM)是一個(gè)用于管理和監(jiān)控MySQL和MongoDB性能的開源平臺(tái)。 它由Percona與托管數(shù)據(jù)庫(kù)服務(wù),支持和咨詢領(lǐng)域的專家合作開發(fā)。 PMM是一個(gè)免費(fèi)的開源解決方案,您可以在自己的環(huán)境中運(yùn)行,以實(shí)現(xiàn)最大的安全性和可靠性。 它為MySQL和MongoDB服務(wù)器提供全面的基于時(shí)間的分析,以確保您的數(shù)據(jù)盡可能高效地工作。
PMM平臺(tái)基于簡(jiǎn)單的客戶端 - 服務(wù)器模型,可實(shí)現(xiàn)高效的可擴(kuò)展性。它包括以下模塊:
PMM Client安裝在您要監(jiān)視的每個(gè)數(shù)據(jù)庫(kù)主機(jī)上。它收集服務(wù)器指標(biāo),一般系統(tǒng)指標(biāo)和查詢分析數(shù)據(jù),以獲得完整的性能概述。收集的數(shù)據(jù)發(fā)送到PMM服務(wù)器。
PMM Server是PMM的核心部分,它聚合收集的數(shù)據(jù),并以Web界面的表格,儀表板和圖形的形式呈現(xiàn)。
PMM是旨在無縫協(xié)同工作的工具集合。一些是由Percona開發(fā)的,一些是第三方開源工具。
下圖說明了PMM當(dāng)前的結(jié)構(gòu):
PMM ClientPMM客戶端軟件包適用于大多數(shù)流行的Linux發(fā)行版:
Red Hat Enterprise Linux衍生產(chǎn)品的RPM(包括CentOS,Oracle Linux,Amazon Linux等)
DEB用于基于Debian的發(fā)行版(包括Ubuntu等)
PMM客戶端軟件包包含以下內(nèi)容:
pmm-admin是用于管理PMM客戶端的命令行工具,例如,添加和刪除要監(jiān)視的數(shù)據(jù)庫(kù)實(shí)例。
percona-qan-agent是一種在收集查詢性能數(shù)據(jù)時(shí)管理查詢分析(QAN)代理的服務(wù)。它還與PMM服務(wù)器中的QAN API連接,并發(fā)送收集的數(shù)據(jù)。
node_exporter是收集一般系統(tǒng)指標(biāo)的Prometheus exporter。有關(guān)詳細(xì)信息,請(qǐng)參閱https://github.com/prometheus...。
mysqld_exporter是收集MySQL服務(wù)器指標(biāo)的Prometheus exporter。有關(guān)詳細(xì)信息,請(qǐng)參閱https://github.com/percona/my...。
mongodb_exporter是收集MongoDB服務(wù)器指標(biāo)的Prometheus exporter。有關(guān)詳細(xì)信息,請(qǐng)參閱https://github.com/percona/mo...。
proxysql_exporter是收集ProxySQL性能指標(biāo)的Prometheus exporter。有關(guān)詳細(xì)信息,請(qǐng)參閱https://github.com/percona/pr...。
PMM ServerPMM服務(wù)器將作為您的中央監(jiān)控主機(jī)的機(jī)器運(yùn)行。它通過以下方式作為設(shè)備分發(fā):
可以用于運(yùn)行容器的Docker映像
可以在VirtualBox或其他管理程序中運(yùn)行
可以通過Amazon Web Services(AWS)運(yùn)行的Amazon Machine Image(AMI)
PMM服務(wù)器由以下工具組成:
查詢分析(QAN)使您能夠在一段時(shí)間內(nèi)分析MySQL查詢性能。除客戶端QAN代理外,還包括以下內(nèi)容:
QAN API是用于存儲(chǔ)和訪問在PMM客戶端上運(yùn)行的percona-qan-agent收集的查詢數(shù)據(jù)的后端
QAN Web App是用于可視化收集的Query Analytics數(shù)據(jù)的Web應(yīng)用程序。
度量監(jiān)視器(MM)提供對(duì)MySQL或MongoDB服務(wù)器實(shí)例至關(guān)重要的度量的歷史視圖。它包括以下內(nèi)容:
Prometheus是一個(gè)第三方時(shí)間序列數(shù)據(jù)庫(kù),連接到在PMM客戶端上運(yùn)行的出口商,并匯總了收集的指標(biāo).
Consul提供一個(gè)PMM客戶端可以遠(yuǎn)程列出,添加和刪除Prometheus主機(jī)的API。
Grafana是一個(gè)第三方儀表板和圖形構(gòu)建器,用于在直觀的Web界面中可視化由Prometheus匯總的數(shù)據(jù).
Percona儀表板是由Percona開發(fā)的Grafana儀表板
Orchestrator是MySQL復(fù)制拓?fù)涔芾砗涂梢暬ぞ摺?/p>
部署方案(https://www.percona.com/doc/p...
參考:
[1] https://prometheus.io/docs/in...
[2] https://www.consul.io/docs/
[3] https://www.consul.io/docs/
[4] https://github.com/outbrain/o...
部署Percona監(jiān)控和管理以下過程介紹如何正確部署PMM:
在主機(jī)上運(yùn)行PMM Server,用于訪問收集的數(shù)據(jù),查看基于時(shí)間的圖表,并執(zhí)行性能分析。
以下選項(xiàng)可用:
使用Docker運(yùn)行PMM服務(wù)器
使用VirtualBox運(yùn)行PMM服務(wù)器
使用Amazon Machine Image(AMI)運(yùn)行PMM服務(wù)器
安裝運(yùn)行PMM Server(使用Docker運(yùn)行PMM服務(wù)器)使用docker運(yùn)行PMM Server
PMM服務(wù)器的Docker映像公開托管在https://hub.docker.com/r/perc...。 如果要從Docker映像運(yùn)行PMM Server,則主機(jī)必須能夠運(yùn)行Docker 1.13或更高版本,并具有網(wǎng)絡(luò)訪問權(quán)限。 有關(guān)使用Docker的更多信息,請(qǐng)參閱Docker文檔(https://docs.docker.com/)。
CentOS 6 安裝Docker
yum --enablerepo=epel -y install docker-io /etc/rc.d/init.d/docker start chkconfig docker on
第一步. 創(chuàng)建一個(gè)PMM數(shù)據(jù)容器注:使用pmm-server映像時(shí),請(qǐng)使用特定的版本標(biāo)簽,而不是最新的標(biāo)簽。目前的穩(wěn)定版本是1.1.3。
要?jiǎng)?chuàng)建持久PMM數(shù)據(jù)的容器,請(qǐng)運(yùn)行以下命令:
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
此容器不運(yùn)行,只需升級(jí)到較新的pmm服務(wù)器映像時(shí),確保您保留所有PMM數(shù)據(jù)。不要?jiǎng)h除或重新創(chuàng)建此容器,除非您打算清除所有PMM數(shù)據(jù)并重新開始。
第二步、創(chuàng)建并運(yùn)行PMM服務(wù)器容器要運(yùn)行PMM服務(wù)器,請(qǐng)使用以下命令:
docker run -d -p 666:80 --volumes-from pmm-data --name pmm-server --restart always percona/pmm-server:1.1.3
確認(rèn)PMM 安裝運(yùn)行是否正確注意:這里666端口是自定義的,因?yàn)楣P者實(shí)驗(yàn)機(jī)80已被占用
通過使用運(yùn)行容器的主機(jī)的IP地址連接到PMM Web界面來驗(yàn)證PMM服務(wù)器是否正在運(yùn)行,然后在要監(jiān)視的所有數(shù)據(jù)庫(kù)主機(jī)上安裝PMM Client
Component | URL |
---|---|
PMM landing page | http://192.168.0.99:port |
Query Analytics (QAN web app) | http://192.168.0.99/qan/ |
Metrics Monitor (Grafana) | http://192.168.0.99/graph/User name: admin Password: admin |
Orchestrator | http://192.168.0.99/orchestrator |
在停止和刪除PMM服務(wù)器之前,請(qǐng)確保相關(guān)的PMM客戶端不通過刪除所有監(jiān)視的實(shí)例來收集任何數(shù)據(jù),如刪除監(jiān)控服務(wù)中所述。
docker stop pmm-server && docker rm pmm-server docker rm pmm-data # 刪除pmm數(shù)據(jù)容器升級(jí)PMM服務(wù)器
docker stop pmm-server # 先停 docker rm pmm-server # 再刪,如果如要保留收集數(shù)據(jù),不要執(zhí)行此操作 docker run -d -p 999:80 --volumes-from pmm-data --name pmm-server --restart always --init percona/pmm-server:1.1.3在Red Hat和CentOS上安裝PMM客戶端
安裝PMM客戶端PMM客戶端是安裝在您要監(jiān)視的MySQL或MongoDB主機(jī)上的一組代理和出口商。 組件收集關(guān)于一般系統(tǒng)和數(shù)據(jù)庫(kù)性能的各種數(shù)據(jù),并將該數(shù)據(jù)發(fā)送到相應(yīng)的PMM服務(wù)器組件。
注:不應(yīng)該在具有相同主機(jī)名的數(shù)據(jù)庫(kù)服務(wù)器上安裝代理,因?yàn)镻MM服務(wù)器使用主機(jī)名來標(biāo)識(shí)收集的數(shù)據(jù)。
PMM客戶端應(yīng)該運(yùn)行在任何現(xiàn)代的Linux發(fā)行版上,但是Percona提供的PMM客戶端軟件包只能從最受歡迎的Linux發(fā)行版的軟件倉(cāng)庫(kù)進(jìn)行自動(dòng)安裝:
系統(tǒng)事先無percona的yum源,需要新增
sudo yum install https://www.percona.com/redir/downloads/percona-release/redhat/latest/percona-release-0.1-4.noarch.rpm
安裝pmm-client軟件包
sudo yum install pmm-client -y將PMM客戶端連接到PMM服務(wù)器
使用pmm-admin config --help,查看幫助
[root@backup-server ~]# sudo pmm-admin config --server 192.168.0.99:666 OK, PMM server is alive. PMM Server | 192.168.0.99:666 Client Name | backup-server Client Address | 192.168.0.47開始數(shù)據(jù)收集
將客戶端連接到PMM服務(wù)器后,通過添加監(jiān)控服務(wù),從數(shù)據(jù)庫(kù)實(shí)例啟用數(shù)據(jù)收集。
要啟用一般系統(tǒng)度量,MySQL指標(biāo)和查詢分析,請(qǐng)運(yùn)行:
管理PMM客戶端# 添加監(jiān)控服務(wù) pmm-admin add # 檢查PMM客戶端和PMM服務(wù)器之間的網(wǎng)絡(luò)連接。 pmm-admin check-network # 配置PMM Client如何與PMM服務(wù)器通信。 pmm-admin config # 打印任何命令和退出的幫助 pmm-admin help # 打印有關(guān)PMM客戶端的信息 pmm-admin info # 出為此PMM客戶端添加的所有監(jiān)控服務(wù) pmm-admin list # 檢查PMM服務(wù)器是否存活 pmm-admin ping # 檢查PMM服務(wù)器是否存活。 pmm-admin purge # 清除PMM服務(wù)器上的度量數(shù)據(jù) pmm-admin remove, pmm-admin rm # 刪除監(jiān)控服務(wù) pmm-admin repair # 重啟pmm pmm-admin restart # 打印PMM Client使用的密碼 pmm-admin show-passwords # 開啟監(jiān)控服務(wù) pmm-admin start # 停止監(jiān)控服務(wù) pmm-admin stop # 在卸載之前清理PMM Client pmm-admin uninstall
添加MySQL查詢分析服務(wù)
默認(rèn)情況下不存在初始的被pmm-client使用的mysql用戶,需要自己創(chuàng)建,筆者是登錄到mysql中創(chuàng)建的用戶,感興趣的同學(xué)可以使用pmm-admin提供的參數(shù)創(chuàng)建默認(rèn)用戶
GRANT ALL PRIVILEGES ON *.* TO "pmm"@"192.168.0.47" IDENTIFIED BY "pmmpassword"; # 創(chuàng)建用戶成功 [root@backup-server ~]# sudo pmm-admin add mysql:metrics --user pmm --password pmmpassword --host 192.168.0.47 # 使用創(chuàng)建的用戶添加監(jiān)控mysql服務(wù) OK, now monitoring MySQL metrics using DSN pmm:***@tcp(192.168.0.47:3306) [root@backup-server ~]# sudo pmm-admin add mysql:queries --user pmm --password pmmpassword --host 192.168.0.47
查看當(dāng)前服務(wù)器監(jiān)控的服務(wù)
[root@backup-server ~]# pmm-admin list pmm-admin 1.1.3 PMM Server | 192.168.0.99:666 Client Name | backup-server Client Address | 192.168.0.47 Service Manager | unix-systemv -------------- -------------- ----------- -------- ------------------------------- ------------------------------------------ SERVICE TYPE NAME LOCAL PORT RUNNING DATA SOURCE OPTIONS -------------- -------------- ----------- -------- ------------------------------- ------------------------------------------ mysql:queries backup-server - YES pmm:***@tcp(192.168.0.47:3306) query_source=slowlog, query_examples=true linux:metrics backup-server 42000 YES - mysql:metrics backup-server 42002 YES pmm:***@tcp(192.168.0.47:3306) tablestats=OFF報(bào)錯(cuò)排查
QAN API error: "qh.Profile: No query classes for selected instance and time range. Please check whether your MySQL settings match the recommended.".Check the /var/log/qan-api.log file in docker container for more information
# mysql 開啟慢日志查詢 yum install percona-toolkit -y # 建議安裝 # slow_query_log = 1 long_query_time = 2 # 重啟mysql(mysql5.6) /etc/init.d/mysql restart
繼續(xù)訪問http://192.168.0.99:666,查看監(jiān)控mysql的狀態(tài)
后續(xù)補(bǔ)充監(jiān)控MongoDB的教程。。。
參考鏈接:https://www.percona.com/softw...
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/19087.html
摘要:推薦閱讀資源庫(kù)工具應(yīng)用程序精選列表中文版有哪些鮮為人知,但是很有意思的網(wǎng)站一份攻城獅筆記每天搜集上優(yōu)秀的項(xiàng)目一些有趣的民間故事超好用的谷歌瀏覽器油猴插件合集目錄資源文檔文章圖書會(huì)談教程更多庫(kù)工具管理數(shù)據(jù)部署桌面發(fā)展監(jiān)控應(yīng)用資源文檔介紹文檔教 推薦閱讀 MongoDB 資源、庫(kù)、工具、應(yīng)用程序精選列表中文版 有哪些鮮為人知,但是很有意思的網(wǎng)站? 一份攻城獅筆記 每天搜集 Github ...
摘要:郭理靖表示,在京東商城的實(shí)踐中,針對(duì)線上系統(tǒng)選擇構(gòu)建兩個(gè)機(jī)房,分別是生產(chǎn)環(huán)境以及在災(zāi)備環(huán)境。在監(jiān)控引擎方面,京東云的嘗試也是比較細(xì)致的,其中包括監(jiān)控服務(wù)報(bào)警服務(wù)等。進(jìn)一步,根據(jù)不同的報(bào)警,我們可以定位到 showImg(https://segmentfault.com/img/bVbtNqp?w=688&h=113); showImg(https://segmentfault.com/...
摘要:郭理靖表示,在京東商城的實(shí)踐中,針對(duì)線上系統(tǒng)選擇構(gòu)建兩個(gè)機(jī)房,分別是生產(chǎn)環(huán)境以及在災(zāi)備環(huán)境。在監(jiān)控引擎方面,京東云的嘗試也是比較細(xì)致的,其中包括監(jiān)控服務(wù)報(bào)警服務(wù)等。進(jìn)一步,根據(jù)不同的報(bào)警,我們可以定位到 showImg(https://segmentfault.com/img/bVbtNqp?w=688&h=113); showImg(https://segmentfault.com/...
摘要:郭理靖表示,在京東商城的實(shí)踐中,針對(duì)線上系統(tǒng)選擇構(gòu)建兩個(gè)機(jī)房,分別是生產(chǎn)環(huán)境以及在災(zāi)備環(huán)境。在監(jiān)控引擎方面,京東云的嘗試也是比較細(xì)致的,其中包括監(jiān)控服務(wù)報(bào)警服務(wù)等。進(jìn)一步,根據(jù)不同的報(bào)警,我們可以定位到 showImg(https://segmentfault.com/img/bVbtNqp?w=688&h=113); showImg(https://segmentfault.com/...
閱讀 2794·2023-04-25 14:41
閱讀 2397·2021-11-23 09:51
閱讀 3687·2021-11-17 17:08
閱讀 1678·2021-10-18 13:31
閱讀 5559·2021-09-22 15:27
閱讀 920·2019-08-30 15:54
閱讀 2231·2019-08-30 13:16
閱讀 739·2019-08-29 17:04