Docker --- 容器监控 之 ( Cadvisor + InfluxDB + Granfana )

1. 问题

通过docker status 命令可以很方便的看到当前宿主机上所有容器的CPU、内存以及网络流量等数据,一般小公司够用了

但是 docker status统计的结果只能是当前宿主机的全部容器,数据资料是实时的,没地方存储,没有健康指标预警等功能

2. 三剑客的作用

2.1 CAdvisor

CAdvisor 负责监控收集,展示Host和容器两个层次的监控数据以及展示历史变化数据

CAdvisor是一个容器资源监控工具,包括容器的内存,CPU,网络IO,磁盘IO等监控,同时提供一个Web页面用于查看容器的实时运行状态.Cadvisor默认存储2分钟的数据,而且只是针对单物理机

不过,CAdvisor提供了很多数据集成接口,支持InfluxDB,Redis,Kafka,Elasticsearch 等集成,可以加上对应配置将监控数据发往这些数据库存储起来

2.2 InfluxDB

InfluxDB 负责存储数据

2.3 Granfana

Granfana 负责展示图表,报警

3. 架构图

4. Docker-compose 部署三剑客

1. 新建目录

mkdir /mydocker/cig

2. 新建 docker-compose.yaml

vim docker-compose.yaml

3. docker-compose 内容

version: '3.1'

volumes:
  grafana_data: {}
  
 
services:
  influxdb:
    image: tutum/influxdb:0.9
    restart: always
    environment:
      - PRE_CREATE_DB=cadvisor   # 创建库
    ports:
      - "8083:8083"
      - "8086:8086"
    volumes:
      - ./data/influxdb:/data
  
  cadvisor:
    image: google/cadvisor
    links:   # 和 influxdb 建立连接
      - influxdb:influxsrv
    command: -storage_driver=influxdb -storage_driver_db=cadvisor -storage_driver_host=influxsrv:8086
    restart: always
    ports:
      - "8080:8080"
    volumes:
      - /:/rootfs:ro
      - /var/run:/var/run:rw
      - /sys:/sys:ro
      - /var/lib/docker/:/var/lib/docker:ro
    
  grafana:
    user: "104"
    image: grafana/grafana
    user: "104"
    restart: always
    links:
      - influxdb:influxsrc
    ports:
      - "3000:3000"
    volumes:
      - grafana_data:/var/lib/grafana
    environment:
      - HTTP_USER=admin
      - HTTP_PASS=admin
      - INFLUXDB_HOST=influxsrv
      - INFLUXDB_PORT=8086
      - INFLUXDB_NAME=cadvisor
      - INFLUXDB_USER=root
      - INFLUXDB_PASS=root

4. 检查 docker-compose 语法是否有错误

docker-compose config -q

5. 启动 docker-compose 文件

docker-compose up -d

6. 查看 是否启动成功

docker ps

7. 查看 CAdvisor 收集服务,第一次启动很慢

http://ip:8080

8. 查看 InfluxDB 存储服务

http://ip:8083

9. 查看 Grafana 展示服务

http://ip:3000

10. Grafana配置数据源

1. 打开界面

2. 搜索influxdb

3. 添加

4. 修改连接

5. 添加 InfluxDB 的参数配置

6. 测试成功

11. 配置 Grafana 面板

配置图表数据读取

效果展示

posted @ 2024-02-21 23:47  河图s  阅读(49)  评论(0)    收藏  举报