prometheus监控docker容器(Rocky9)

1. 下载 cAdvisor 二进制

复制代码
cd /usr/local
wget https://github.com/google/cadvisor/releases/download/v0.49.1/cadvisor-v0.49.1-linux-amd64 -O cadvisor
chmod +x cadvisor

2. 后台启动 cAdvisor(教材端口:8080)

复制代码
nohup /usr/local/cadvisor \
--port=8080 \
--docker=/var/run/docker.sock \
>/dev/null 2>&1 &

3. 验证成功

复制代码
curl 127.0.0.1:8080/metrics

出现一大段指标 = 成功

cAdvisor查询界⾯和http接⼝,可访问ip:8080打开web界⾯:

cAdvisor也提供了供prometheus访问的接⼝,可访问ip:8080/metrics,如下图所⽰:


二、部署 node_exporter(二进制,不用 Docker)

复制代码
cd /usr/local
wget https://github.com/prometheus/node_exporter/releases/download/v1.5.0/node_exporter-1.5.0.linux-amd64.tar.gz
tar zxvf node_exporter-1.5.0.linux-amd64.tar.gz
mv node_exporter-1.5.0.linux-amd64 node_exporter

启动:

复制代码
nohup /usr/local/node_exporter/node_exporter >/dev/null 2>&1 &

验证:

复制代码
curl 127.0.0.1:9100/metrics

部署完成后,node-exporter服务默认监听在9100端⼝。


三、Prometheus 配置

复制代码
scrape_configs:
  - job_name: 'docker_host'
    static_configs:
      - targets: ['192.168.52.130:9100']

  - job_name: 'docker_containers'
    static_configs:
      - targets: ['192.168.52.130:8080']

热重载 Prometheus

复制代码
curl -XPOST http://192.168.52.130:9090/-/reload

http://192.168.52.130:9090/targets


四、Grafana 导入 Docker 面板

ID:10619


你现在只需要按顺序复制这 4 段命令即可

复制代码
cd /usr/local
wget https://github.com/google/cadvisor/releases/download/v0.49.1/cadvisor-v0.49.1-linux-amd64 -O cadvisor
chmod +x cadvisor
nohup /usr/local/cadvisor --port=8080 --docker=/var/run/docker.sock >/dev/null 2>&1 &

cd /usr/local
wget https://github.com/prometheus/node_exporter/releases/download/v1.5.0/node_exporter-1.5.0.linux-amd64.tar.gz
tar zxvf node_exporter-1.5.0.linux-amd64.tar.gz
mv node_exporter-1.5.0.linux-amd64 node_exporter
nohup /usr/local/node_exporter/node_exporter >/dev/null 2>&1 &

最终效果

  • cAdvisor 正常运行:192.168.52.130:8080/metrics
  • node_exporter 正常运行:192.168.52.130:9100/metrics
  • Prometheus 监控 Docker 容器
  • Grafana 面板正常出图(Docker 容器图:10619 Linux 主机图:8919)

下图是docker状态截图:

node_export获取的数据截图

相关推荐
console.log('npc')1 天前
Windows 11 安装 WSL2 + Ubuntu + Docker + Codex + Sub2API 教学
windows·docker·powershell·ubantu·codex
仙柒4151 天前
Docker原理
运维·docker·容器
Cat_Rocky1 天前
Kubernetes集群升级指南以及自动更新证书
云原生·容器·kubernetes
米高梅狮子1 天前
第2章 docker容器
运维·docker·云原生·容器·架构·kubernetes·自动化
万里侯1 天前
分布式系统设计原则:构建高可用的系统架构
微服务·容器·k8s
卧室小白1 天前
docker网络与服务编排与集群
运维·docker·容器
古城小栈1 天前
K8s 之 ingress
云原生·容器·kubernetes
借你耳朵说爱你1 天前
docker容器启动报错:library initialization failed - unable to allocate file descriptor table - out of memory
docker
万里侯1 天前
微服务与人生:从服务网格看人际关系
微服务·容器·k8s
疯狂成瘾者1 天前
Kubernetes(简称K8s)
云原生·容器·kubernetes