docker 搭建基于prometheus的監(jiān)控體系步驟實(shí)現(xiàn)
Prometheus是一個(gè)時(shí)間序列數(shù)據(jù)庫(kù)。但是,它不僅僅是一個(gè)時(shí)間序列數(shù)據(jù)庫(kù)。
它涵蓋了可以綁定的整個(gè)生態(tài)系統(tǒng)工具集及其功能。
Prometheus主要用于對(duì)基礎(chǔ)設(shè)施的監(jiān)控。包括服務(wù)器,數(shù)據(jù)庫(kù),VPS,幾乎所有東西都可以通過Prometheus進(jìn)行監(jiān)控。Prometheus希望通過對(duì)Prometheus配置中定義的某些端點(diǎn)執(zhí)行的HTTP調(diào)用來檢索度量標(biāo)準(zhǔn)。
普羅米修斯的主要特點(diǎn)是:
1. 一個(gè)多維數(shù)據(jù)模型,其中包含通過度量標(biāo)準(zhǔn)名稱和鍵/值對(duì)標(biāo)識(shí)的時(shí)間序列數(shù)據(jù)
2.PromQL,一種靈活的查詢語(yǔ)言 ,可利用此維度
3.不依賴分布式存儲(chǔ);單服務(wù)器節(jié)點(diǎn)是自治的
4.時(shí)間序列收集通過HTTP上的拉模型進(jìn)行
5.通過中間網(wǎng)關(guān)支持推送時(shí)間序列
6.通過服務(wù)發(fā)現(xiàn)或靜態(tài)配置發(fā)現(xiàn)目標(biāo)
7.多種圖形和儀表板支持模式
需要下載鏡像:
- prom/mysqld-exporter(監(jiān)控mysql)
- prom/prometheus
- prom/node-exporter(監(jiān)控node節(jié)點(diǎn)整機(jī)狀態(tài))
prometheus原理
1.啟動(dòng)prometheus容器服務(wù)
啟動(dòng)前需要先手動(dòng)在當(dāng)前目錄下創(chuàng)建prometheus.yml文件:touch prometheus.yml,不然會(huì)報(bào)掛在文件創(chuàng)建失敗的錯(cuò)誤,因?yàn)閐ocker run時(shí)默認(rèn)創(chuàng)建的掛載點(diǎn)是目錄,不是文件。
docker run -d --name prometheus -p 9090:9090 -v ${PWD}/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus
2.啟動(dòng)成功后,公網(wǎng)訪問該9090端口進(jìn)入普羅米修斯主頁(yè)
3.部署mysqld-exporer監(jiān)控mysql數(shù)據(jù)庫(kù)(想監(jiān)控什么就部署對(duì)應(yīng)的exporter即可)
a.先部署mysql服務(wù)(有監(jiān)控對(duì)象)
docker run -d --name my-mysql -v /home/gaofei/test/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=1qaz9ol. -p 8888:3306 mysql:5.5
b.進(jìn)入prometheus.io/download下載對(duì)應(yīng)的exporter
docker run -d --name mysql-exporter -p 9104:9104 -e DATA_SOURCE_NAME="root:1qaz9ol.@(mysql主機(jī)ip:888)/mysql" prom/mysqld-exporter
配置prometheus.yml文件
global: scrape_interval: 15s evaluation_interval: 15s rule_files: - rules/*.rules scrape_configs: - job_name: 'prometheus' scrape_interval: 5s static_configs: - targets: ['localhost:9090'] - job_name: 'node_exporter' scrape_interval: 10s static_configs: - targets: ['ip:9100'] - job_name: 'mysql' scrape_interval: 10s static_configs: - targets: ['ip:9104']
4.重啟prometheus服務(wù)
docker restart prometheus
5.訪問prometheus主頁(yè)查看mysql的監(jiān)控
點(diǎn)擊mysql---show more
由上可見,是通過一個(gè)metrics的接口來傳輸數(shù)據(jù)的,此時(shí)mysql和node都處于可監(jiān)控的狀態(tài)了。
6.將監(jiān)控?cái)?shù)據(jù)通過grafana面板展示
a.啟動(dòng)grafana服務(wù)
docker run -d --name=grafana -p 3000:3000 grafana/grafana
b.訪問grafana首頁(yè)(默認(rèn)用戶和密碼:admin/admin)
c.選擇數(shù)據(jù)源
只需要配置URL即可
d.制作對(duì)應(yīng)服務(wù)的儀表盤
將id粘貼后點(diǎn)擊load
點(diǎn)擊import
同理配置node-exporter監(jiān)控
grafana中搜索
配置好grafana面板后發(fā)現(xiàn)沒有數(shù)據(jù)
是因?yàn)樵诜?wù)端沒有啟動(dòng)node-exporter 服務(wù),直接下載二進(jìn)制文件然后啟動(dòng)(方便,因?yàn)閚ode_exporter設(shè)計(jì)用于監(jiān)控主機(jī)系統(tǒng)。不建議將其部署為Docker容器,因?yàn)樗枰L問主機(jī)系統(tǒng))
將該文件上傳至宿主機(jī)后,執(zhí)行以下1,2,3步,可使用nohup./node_exporter--web.listen-address=":9100"&命令后臺(tái)啟動(dòng)
啟動(dòng)后公網(wǎng)訪問9100端口即可驗(yàn)證是否可用
然后再訪問grafana中node-exporter就有node宿主機(jī)的系統(tǒng)監(jiān)控?cái)?shù)據(jù)了
OK,
大功告成
后期可結(jié)合jmeter使用,可以邊壓測(cè),邊觀察服務(wù)資源利用率等數(shù)據(jù)~~~~~
到此這篇關(guān)于docker 搭建基于prometheus的監(jiān)控體系步驟實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)docker搭建prometheus內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 基于docker 搭建Prometheus+Grafana的過程詳解
- Docker 部署 Prometheus的安裝詳細(xì)教程
- 使用docker部署grafana+prometheus配置
- docker安裝prometheus和grafana的詳細(xì)過程
- docker-compose搭建prometheus+grafana+釘釘告警
- docker部署Prometheus+Cadvisor+Grafana實(shí)現(xiàn)服務(wù)器監(jiān)控
- Docker搭建prometheus(普羅米修斯)的方法步驟
- docker 部署prometheus+grafana的過程詳解
- Docker部署Prometheus的實(shí)現(xiàn)示例
相關(guān)文章
Docker 容器生命周期 架構(gòu) 以及和VM之間的差異詳解
這篇文章主要介紹了Docker 容器生命周期 架構(gòu) 以及和VM之間的差異詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-11-11使用docker的python基礎(chǔ)鏡像時(shí)要指定patch版本原理
這篇文章主要為大家介紹了使用docker的python基礎(chǔ)鏡像時(shí)要指定patch版本原理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10Docker Compose快速部署多容器服務(wù)實(shí)戰(zhàn)的實(shí)例詳解
使用 Docker Compose 可以輕松、高效的管理容器,它是一個(gè)用于定義和運(yùn)行多容器 Docker 的應(yīng)用程序工具,本文給大家介紹Docker Compose快速部署多容器服務(wù)實(shí)戰(zhàn),感興趣的朋友一起看看吧2022-02-02Docker網(wǎng)絡(luò)模型以及容器通信詳解續(xù)篇
這篇文章主要介紹了Docker網(wǎng)絡(luò)模型以及容器通信詳解續(xù)篇的相關(guān)資料,通過學(xué)習(xí)Docker網(wǎng)路驅(qū)動(dòng)模型,更好地解決容器間的通信問題,需要的朋友可以參考下2022-11-11