• Docker(12)CIG容器重量级监控系统


    CIG是啥?

    CAdvisor + InfluxDB + Granfana = CIG

    CAdvisor 监控工具

    CAdvisor是一个容器资源监控工具,包括容器的内存,CPU,网络IO,磁盘IO等监控,同时提供一个WEB界面用于查看容器的实时运行状态。

    CAdvisor默认存储两分钟数据,而且只是针对单物理机。

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

    CAdvisor功能主要有两点

    • 展示Host和容器两个层次的监控数据。
    • 展示历史变化数据

    InfluxDB

    InfluxDB是用GO语言编写的一个开源分布式时序,事件和指标数据库,无需外部依赖。

    为了持久化存储数据和统一收集展示监控数据,需要将数据存到InfluxDB中。

    InfluxDB主要功能

    • 基于时间序列,支持与时间有关的相关函数(最大,最小等)
    • 可度量性:可以实时对大量数据进行计算
    • 基于事件:它支持任意的事件数据

    Granfana

    Granfana 是一个开源的数据监控分析可视化平台,支持多种数据源配置

    Granfana主要功能

    • 丰富的图形化选择
    • 可以混合多种风格
    • 支持多个数据源
    • 支持白天和黑夜模式

    CIG写入compose编排

    先创建指定目录

    mkdir -p /opt/cig
    cd /opt/cig
    vim docker-compose.yml
    
    • 1
    • 2
    • 3

    yml内容

    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: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:influxsrv
      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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49

    检查是否有误

    docker compose config -q  # 检查文件并输出错误信息
    
    • 1
  • 相关阅读:
    OpenXR手部追踪实现详解
    摆闸机的应用领域和性能特点
    K8S部署Dashboard
    C++ 并发编程实战 第四章 并发操作的同步
    MySQL数据库管理
    基于opencv+tensorflow+神经网络的智能银行卡卡号识别系统——深度学习算法应用(含python、模型源码)+数据集(三)
    IOS停机卡免流线路下载更新
    Python 全栈安全(四)
    python离散事件仿真库SimPy官方教程(1)
    WPF-后台设置控件Background
  • 原文地址:https://blog.csdn.net/gtd54789/article/details/128041937