docker搭建prometheus監(jiān)控教程
介紹
prometheus是開(kāi)源的監(jiān)控解決方案。他的監(jiān)控側(cè)重于云原生應(yīng)用,例容器、k8s集群。prometheus通過(guò)各種各樣的exporter去監(jiān)控各種metric指標(biāo)數(shù)據(jù)。
(本期目標(biāo):docker部署prometheus,添加常見(jiàn)exproter并且在grafana中導(dǎo)入可視化模板。)
docker環(huán)境的準(zhǔn)備,怎么切換到國(guó)內(nèi)鏡像倉(cāng)庫(kù)源,提升鏡像下載速度。小伙伴可以自行去查找其他博客進(jìn)行學(xué)習(xí)。
拉鏡像
這里我們拉取Prometheus、node-exporter、mysqld-exporter、cadvisor鏡像并且啟動(dòng)他們。
node-exporter:虛擬機(jī)監(jiān)控的exporter,包括虛擬機(jī)cpu、內(nèi)存使用情況等。mysqld-exporter:mysql監(jiān)控的exporter。cadvisor:容器監(jiān)控的exporter。
docker pull prom/node-exporter docker pull prom/mysqld-exporter docker pull google/cadvisor docker pull prom/prometheus docker pull grafana/grafana
起容器
- node-exporter
docker run -d --name node-exporter --restart=always -p 9100:9100 -v "/proc:/host/proc:ro" -v "/sys:/host/sys:ro" -v "/:/rootfs:ro" prom/node-exporter
容器啟動(dòng)后可通過(guò)訪問(wèn)http://ip:9100/metrics查看指標(biāo)。

- mysqld-exporter
docker run -d --name mysqld_exporter --restart=always -p 9104:9104 -e DATA_SOURCE_NAME="root:Password123@(172.17.0.2:3306)/" prom/mysqld-exporter
容器啟動(dòng)后可通過(guò)訪問(wèn)http://ip:9104/metrics查看指標(biāo)。
- cadvisor
docker run -v /:/rootfs:ro -v /var/run:/var/run:rw -v /sys:/sys:ro -v /var/lib/docker/:/var/lib/docker:ro -v /dev/disk/:/dev/disk:ro -p 8080:8080 -d --name=cadvisor --restart=always google/cadvisor:latest
容器啟動(dòng)后可通過(guò)訪問(wèn)http://ip:8080/metrics查看指標(biāo)。
- prometheus
prometheus容器啟動(dòng)前需要配置前面三個(gè)exporter的網(wǎng)絡(luò)信息。因?yàn)橥瑢儆赿ocker網(wǎng)絡(luò)。我們可以通過(guò)docker inspect containerid來(lái)查看上面三個(gè)容器的IP,將三個(gè)exporter注冊(cè)進(jìn)prometheus里。
mkdir /opt/prometheus cd /opt/prometheus/ vim prometheus.yml
下面貼出我的prometheus.yml配置文件:
global:
scrape_interval: 60s
evaluation_interval: 60s
scrape_configs:
- job_name: prometheus
static_configs:
- targets: ['localhost:9090']
labels:
instance: prometheus
- job_name: linux
static_configs:
- targets: ['172.17.0.3:9100']
labels:
instance: localhost
- job_name: cadvisor
static_configs:
- targets: ['172.17.0.5:8080']
labels:
instance: cAdvisor
- job_name: mysqld
static_configs:
- targets: ['172.17.0.4:9104']
labels:
instance: mysql-exporter使用下面命令啟動(dòng)prometheus容器:
docker run -d --name prometheus --restart=always -p 9090:9090 -v /opt/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus
訪問(wèn)http://ip:9090/targets,可以看到我們起來(lái)的幾個(gè)exporter:

- grafana
創(chuàng)建grafana數(shù)據(jù)目錄:
mkdir /opt/grafana-storage chmod 777 -R /opt/grafana-storage
下面啟動(dòng)grafana容器:
docker run -d --name grafana --restart=always -p 3000:3000 --name=grafana -v /opt/grafana-storage:/var/lib/grafana grafana/grafana
容器啟動(dòng)后可通過(guò)訪問(wèn)http://ip:3000訪問(wèn)grafana,初始賬號(hào)為admin/admin,第一次登錄后會(huì)需要你修改密碼。

配置grafana儀表盤(pán)
這里我們選擇數(shù)據(jù)源為prometheus

這里我給出我的配置參考:

主要注意URL的填寫(xiě),我這里填寫(xiě)的是prometheus容器內(nèi)網(wǎng)地址。大家可以使用docker inspect containerid進(jìn)行查看。
- 導(dǎo)入官方儀表盤(pán)
8919、179分別是虛擬機(jī)監(jiān)控儀表盤(pán)和容器監(jiān)控儀表盤(pán),輸入數(shù)字后load。


修改名稱、選擇你的prometheus數(shù)據(jù)源再import即可。
監(jiān)控效果查看
下面給出我的虛擬機(jī)和容器監(jiān)控效果圖如下:


總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
docker離線部署docker,部署業(yè)務(wù)方式
這篇文章主要介紹了docker離線部署docker,部署業(yè)務(wù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01
解決Docker安裝錯(cuò)誤failure:repodata/repomd.xml from docke
在使用yum命令安裝docker或其他工具時(shí)可能會(huì)遇到failure_repodata_repomd.xmlfromdocker-ce-stable_[Errno256]Nomoremirrorstotry的錯(cuò)誤,原因可能是yum源配置問(wèn)題,解決方法包括重置yum源,刪除多余的repo文件2024-11-11
詳解利用ELK搭建Docker容器化應(yīng)用日志中心
這篇文章主要介紹了詳解利用ELK搭建Docker容器化應(yīng)用日志中心,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
docker部署Prometheus+Cadvisor+Grafana實(shí)現(xiàn)服務(wù)器監(jiān)控
這篇文章主要為大家介紹了docker部署Prometheus+Cadvisor+Grafana實(shí)現(xiàn)服務(wù)器監(jiān)控,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11
基于docker搭建redis-sentinel集群的方法示例
這篇文章主要介紹了基于docker搭建redis-sentinel集群的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-06-06
Windows使用docker打開(kāi)新窗口error解決辦法
這篇文章主要介紹了Windows使用docker打開(kāi)新窗口error解決辦法,十分簡(jiǎn)單,需要的朋友可以參考下。2017-09-09
使用docker輕松幾步打造個(gè)人專屬圖床的實(shí)現(xiàn)步驟
本文主要介紹了使用docker打造個(gè)人專屬圖床的實(shí)現(xiàn)步驟,可以快速搭建屬于您自己的圖床,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-02-02

