grafan+cadvisor+prometheus监控docker:

  运行cadvisor:

  docker run \
--volume=/:/rootfs:ro \
--volume=/var/run:/var/run:ro \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:ro \
--volume=/dev/disk/:/dev/disk:ro \
--publish=8081:8080 \
--detach=true \
--name=cadvisor \
google/cadvisor:latest 运行grafana: docker run -d \
--name=grafana \
-p 3000:3000 \
grafana/grafana 运行prometheus: docker run -d \
--name=prometheus \
-p 9090:9090 \
prom/prometheus # 访问端口:
http://192.168.3.100:3000/
http://192.168.3.100:9090/
http://192.168.3.100:8081/

配置cadvisor:

访问入口: http://[ip]:8081

能看到数据信息就说明配置没问题

配置prometheus:

#进入prometheus
docker exec -it prometheus sh #修改配置
vim /etc/prometheus/prometheus.yml static_configs:
- targets: ['localhost:9090']
- job_name: 'docker'
static_configs:
- targets: ['192.168.3.100:8081'] #修改完毕后重启 prometheus 容器:
docker restart prometheus

进入web页面:

点击 http://192.168.3.100:8081/metrics能看到数据,说明配置没问题

能看到监控数据则没有问题

配置启动grafana:

docker run -d \
> --name=grafana \
> -p 3000:3000 \
grafana/grafana # 默认账号密码都是 admin

添加数据源:

选择 prometheus 为数据源:

选择这个源:

添加数据展示 仪表盘:



container_memory_usage_bytes{image!="",name="cadvisor"}
container_memory_max_usage_bytes{image!="",name="cadvisor"} 填写完毕后 保存配置
#官方有很多仪表盘提供使用
#其中较为适合监控docker容器的仪表盘号: 193

效果:

问题:

grafana图表无数据问题原因:

1. 如果grafna没有数据,可能时时间不对,需要每台服务器时间保持一致
2. promql存在问题,如:版本不兼容
3. prometheus里无数据,需要排查prometheus

多服务器监控docker

默认只能监控当前主机,如果需要监控多个主机,就需要做以下操作步骤:

1. 被监控主机安装 cadvisor
docker run \
--volume=/:/rootfs:ro \
--volume=/var/run:/var/run:ro \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:ro \
--volume=/dev/disk/:/dev/disk:ro \
--publish=8081:8080 \
--detach=true \
--name=cadvisor \
google/cadvisor:latest 2. 在其他服务器运行prometheus: docker run -d \
--name=prometheus \
-p 9090:9090 \
prom/prometheus 3. 在prometheus容器中新增被监控服务器的IP[所有IP] docker exec -it prometheus sh 查看:
static_configs:
- targets: ['localhost:9090']
- job_name: 'docker'
static_configs:
- targets: ['192.168.3.100:8081'] 修改为:
- targets: ['localhost:9090'] #在这一行下方添加:
- job_name: 'docker'
static_configs:
- targets: ['192.168.3.100:8081','192.168.3.85:8081'] #targets填写:cadvisor 的IP和端口。targets:
修改完成,重启 prometheus容器 即可 3. 重启prometheus容器:
docker restart prometheus

页面添加:

进入prometheus 设置页面 点击 :  ’Add data source‘ 添加数据源

填写被监控服务器的IP:

页面检查:

通过访问:

http://192.168.3.85:8081/containers/

http://192.168.3.100:8081/containers/

查看是否安装 cadvisor

导入监控:

label_values(up,instance)

多个主机配置配置这个是一样的

做了这一步后去编辑图表,让他显示其他节点信息,节点多的情况下每个节点都需要增加 query0配置 label_values(up,instance)

# 在编辑页面修改参数为:rate(container_cpu_user_seconds_total{image!="",instance="$Node"}[5m]) * 100rate(container_cpu_user_seconds_total{image!=""}[5m]) * 100#保存即可这个$Node 就是 Variables 这个Name: query0  也可以配置为 $query0  也可以配置为 $Node 那下面图这里就要改成 $Node

添加复选框

找到:Home / Settings选择  Variables 右边选项卡出现后在 Query 后面 添加: label_values(up,instance)修改完成后 保存或者 update 即可

#因为这里 看到 variable中定义的 Name: query0 那么他就是获取信息的关键在每个图形页面添加如下设置:,instance="$query0"添加完成后点击 save 保存

grafan+cadvisor+prometheus监控docker的更多相关文章

  1. Prometheus 监控Docker服务器及Granfanna可视化

    Prometheus 监控Docker服务器及Granfanna可视化 cAdvisor(Container Advisor)用于收集正在运行的容器资源使用和性能信息. 使用Prometheus监控c ...

  2. Prometheus监控Docker Swarm集群(一)

    Prometheus监控Docker Swarm集群(一) cAdvisor简介 为了解决容器的监控问题,Google开发了一款容器监控工具cAdvisor(Container Advisor),它为 ...

  3. 使用Prometheus监控docker compose方式部署的ES

    需求 收集 ES 的指标, 并进行展示和告警; 现状 ES 通过 docker compose 安装 所在环境的 K8S 集群有 Prometheus 和 AlertManager 及 Grafana ...

  4. Grafana连接Prometheus监控Docker平台

    Grafana是一款开源的分析平台. Grafana allows you to query, visualize, alert on and understand your metrics no m ...

  5. Prometheus入门到放弃(4)之cadvisor监控docker容器

    Prometheus监控docker容器运行状态,我们用到cadvisor服务,cadvisor我们这里也采用docker方式直接运行. 1.下载镜像 [root@prometheus-server ...

  6. 6. 使用cadvisor监控docker容器

    Prometheus监控docker容器运行状态,我们用到cadvisor服务,cadvisor我们这里也采用docker方式直接运行.这里我们可以服务端和客户端都使用cadvisor 客户端 1.下 ...

  7. prometheus监控(小试牛刀)

    prometheus监控(小试牛刀) 环境:全部服务都是基于docker运行 本文略微草率,好文章在这里,特别好如下: https://www.cnblogs.com/tchua/p/11120228 ...

  8. cAdvisor+Prometheus+Grafana监控docker

    cAdvisor+Prometheus+Grafana监控docker 一.cAdvisor(需要监控的主机都要安装) 官方地址:https://github.com/google/cadvisor ...

  9. cAdvisor+InfluxDB+Grafana 监控Docker

    容器的监控方案其实有很多,有docker自身的docker stats命令.有Scout.有Data Dog等等,本文主要和大家分享一下比较经典的容器开源监控方案组合:cAdvisor+InfluxD ...

  10. docker-compose 快速部署Prometheus,监控docker 容器, 宿主机,ceph -- cluster集群

    话不多说上菜: 现在环境是这样: ceph 4台: 192.168.100.21  ceph-node1 192.168.100.22  ceph-node2 192.168.100.23  ceph ...

随机推荐

  1. Vim 安装与基础操作指南

    0x00 链接 Vim 官网 Vim GitHub Vim 中文文档 0x01 准备 (1)下载与安装 在官网地址找到 Download 标签,在其中根据操作系统选择相应的版本,以下以 Windows ...

  2. 开源相机管理库Aravis例程学习(二)——连续采集multiple-acquisition-main-thread

    目录 简介 例程代码 函数说明 arv_camera_set_acquisition_mode arv_camera_create_stream arv_camera_get_payload arv_ ...

  3. .NET Emit 入门教程:第六部分:IL 指令:8:详解 ILGenerator 指令方法:类型转换指令

    前言: 经过前面几篇的学习,我们了解到指令的大概分类,如: 参数加载指令,该加载指令以 Ld 开头,将参数加载到栈中,以便于后续执行操作命令. 参数存储指令,其指令以 St 开头,将栈中的数据,存储到 ...

  4. nginx 学习的前提

    前言 在nginx 中,需要学会的是如何安装.基础的命令.看懂配置那么这时候才是一切的刚刚开始. 正文 安装可以去看菜鸟驿站的: https://www.runoob.com/linux/nginx- ...

  5. Linux_aarch64_head.S到main.c的环境建立

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 环境说明   无 前言   最开始,我仅仅是对linux比较感兴 ...

  6. 力扣1076(MySQL)-员工项目Ⅱ(简单)

    题目: 编写一个SQL查询,报告所有雇员最多的项目. 查询结果格式如下所示:  解题思路: 方法一:将两个表联结,以project_id进行分组,统计员工数降序排序,然后筛选出第一条数据. 1 sel ...

  7. 千万商家的智能决策引擎--AnalyticDB如何助力生意参谋双十一

    作者:算法&健兮,阿里巴巴数据技术及产品部技术专家 生意参谋介绍 生意参谋是阿里官方打造的全渠道.全链路.一站式数据平台,致力于为用户提供经营分析.市场洞察.客群洞察等多样化数据服务,帮助用户 ...

  8. 【开通指南】 实时计算 Flink 全托管版本

    简介: [开通指南]实时计算 Flink 全托管版本 1.试用的实时计算 Flink 版产品是后付费还是预付费?是否有额外费用产生?预付费,有额外的SLB费用,一天2元封顶.(开通 Flink 全托管 ...

  9. 致敬 hacker |盘点内存虚拟化探索之路

    ​简介: 内存虚拟化相比裸机,仍然存在较大差异,是当下值得关注的问题! ​ 云与虚拟化 云计算是通过 Internet 服务的方式提供动态可伸缩资源的计算模式,经过多年的发展已成为企业 IT 技术的重 ...

  10. [PHP] 业务逻辑大内存占用的优化思路, yield 和 chunk

      示例: header("content-type:text/html;charset=utf-8"); function readTxt() { $handle = fopen ...