Docker / Prometheus / 监控平台 / 系统运维

Prometheus监控Docker容器

浅时光博客 · 1月10日 · 2022年 · 401 字 · 约 2 分钟 6.7w次已读
Docker告警规则
价格:免费
  • 终身VIP购买价格 : 免费
信息Docker告警规则
文件YAML
最近更新2024年02月25日
文章来源(Source):浅时光博客 AI 文章摘要 时光AI(本站开发)
原文链接:https://dqzboy.com

一、部署cAdvisor


  • 在被监控的Docker节点机器上启动cAdvisor服务,启动方式使用Docker启动

1、启动服务

docker run \
  --volume=/:/rootfs:ro \
  --volume=/var/run:/var/run:rw \
  --volume=/sys:/sys:ro \
  --volume=/var/lib/docker/:/var/lib/docker:ro \
  --publish=30080:8080 \
  --detach=true \
  --name=cadvisor \
  google/cadvisor:latest
  • 参数解释:
    • –publish:端口映射,等价于 -p
    • –detach=true:后台运行,等价于 -d

2、检查服务

  • 检查容器启动结果
~]# docker container ps | grep cadvisor

3、访问页面

  • 通过访问http://IP:30080可以查看,当前主机上容器的运行状态,如下所示
prom+docker01
  • 点击页面中的Docker Containers就可以看到运行的几个容器,点击进入容器可以看到主机和容器的硬件资源使用率
prom+docker02
prom+docker03

4、检查指标

  • 通过访问http://IP:30080/metrics可以查看采集到的数据指标
prom+docker04

二、配置监控


重要

1、添加监控JOB

~]# vim /usr/local/prometheus/prometheus.yml
  ##Docker容器监控
  - job_name: "Docker Container"
    static_configs:
      - targets: ['192.168.66.102:30080','192.168.66.99:30080']
    relabel_configs:
      - source_labels: [__address__]
        regex: '(.*)\:30080'
        target_label: 'hostname'
        replacement: '$1'
      - source_labels: [__address__]
        regex: '(.*)\:30080'
        target_label: 'nodeip'
        replacement: '$1'

2、检查配置语法

~]# promtool check config /usr/local/prometheus/prometheus.yml

3、重载监控配置

~]# curl -X POST http://127.0.0.1:9090/-/reload

4、检查Target状态

prom+docker05

三、添加面板


  • 现在我们可以在Grafana官网上找一个监控面板导入进来
  • 面板:点击下载
prom+docker06

四、添加告警


1、添加告警规则

~]# vim /usr/local/prometheus/rules/alerts_docker.yml

2、检查配置语法

~]# promtool check config /usr/local/prometheus/prometheus.yml

3、重载配置信息

~]# curl -X POST http://127.0.0.1:9090/-/reload

4、检查Alert信息

prom+docker07
0 条回应

必须 注册 为本站用户, 后才可以发表评论!