暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Docker容器监控

知而志学 2021-05-25
210

前面文章Prometheus+Grafana性能监控介绍了工具部署、监控linux服务器以及Redis以及MYSQL数据库监控,本篇继续介绍通过上述工具监控Docker容器。

监控docker容器

  • 为了解决docker stats的问题(存储、展示),谷歌开源的cadvisor诞生了,cadvisor不仅可以搜集一台机器上所有运行的容器信息,还提供基础查询界面和http接口,方便其他组件如Prometheus进行数据抓取
  • cAdvisor可以对节点机器上的资源及容器进行实时监控和性能数据采集,包括CPU使用情况、内存使用情况、网络吞吐量及文件系统使用情况.
  • Cadvisor使用Go语言开发,利用Linux的cgroups获取容器的资源使用信息,在K8S中集成在Kubelet里作为默认启动项,官方标配。

安装并运行cadvisor

  • 使用docker安装,创建docker-compose_cadvisor.yml
    配置文件
cd /opt/docker-compose
touch docker-compose_cadvisor.yml

  • 编辑docker-compose_cadvisor.yml
    配置文件如下:
version: '3.2'

services:
  cadvisor:
    image: google/cadvisor:latest
    container_name: cadvisor
    restart: unless-stopped
    ports:
      - '18080:8080'
    volumes:
      - /:/rootfs:ro
      - /var/run:/var/run:rw
      - /sys:/sys:ro
      - /var/lib/docker/:/var/lib/docker:ro

  • docker-compose运行docker容器
docker-compose -p cadvisor -f docker-compose_cadvisor.yml up -d

  • 成功后浏览器访问http://11.12.110.38:18080/containers/
containers
cpu

配置Prometheus

  • prometheus.yml
    追加以下内容
  - job_name: 'cadvisor'
    scrape_interval: 5s
    static_configs:
      - targets: ['192.168.9.140:18080']

  • 修改配置文件后需重启prometheus
    容器
docker restart CONTAINER ID

  • 成功后如下图
cadvisor

配置Grafana

  • 添加Dashboards,导入模板https://grafana.com/grafana/dashboards/8321
    ,并load成功
Dashboards
  • 详细监控页面,可根据需求选择监控时间段
详细监控页面


文章转载自知而志学,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论