Portainer

概念

  • Portainer 是一款轻量级的应用,提供了图形化界面,用于方便地管理 Docker 环境,包括单机环境和集群环境

安装

  • portainer 官网
  • 如果出现问题,将 portainer/portainer 替换成 portainer/portainer-ce
  • docker 命令:docker run -d -p 8000:8000 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer alt

操作



CAdvisor + InfluxDB + Granfana 容器监控

  • CAdvisor监控收集 + InfluxDB存储数据 + Granfana展示图表

背景

  • 也可以使用 docker status 命令查看当前宿主机上所有的容器 CPU、内存以及网络流量等数据
  • 但是 docker status 统计结果只能是当前宿主机的全部容器,数据资料是实时的,没有地方存储、没有健康指标过线预警等功能

CAdvisor

  • CAdvisor 是一个容器资源监控工具,包括容器的内存、CPU、网络IO、磁盘IO等监控,同时提供了一个web页面用于查看容器的实时运行状态。CAdvisor 默认存储2分钟数据,而且只是针对单物理机
  • 不过 CAdvisor 提供了很多数据集成接口,支持 InfluxDB、Redis、Kafka、Elasticsearch等集成,可以加上对应配置将监控数据发往这些数据库存储起来
  • 主要功能:
    1. 展示 Host 和容器两个分层次的监控数据
    2. 展示历史变化数据

InfluxDB

  • InfluxDB 是用 Go 语言编写的一个开源分布式时序、事件、指标数据库,无需外部依赖。将 CAdvisor 收集的数据存储到 InfluxDB 中
  • 主要功能:
    1. 基于时间序列,支持与时间有关的想关函数
    2. 可度量性,可以实时对大量数据进行计算
    3. 基于事件,支持任意的事件数据

Granfana

  • Granfana 是一个开源的数据监控分析可视化平台,支持多种数据源配置(InfluxDB、MySQL、Elasticsearch、OpenTSDB、Graphite)和丰富的插件及模块功能,支持图表权限控制和报警
  • 主要功能:
    1. 灵活丰富的图形化选项
    2. 可以混合多种风格
    3. 多个数据源

安装

  • 编辑 docker-compose.yml 文件
  • 使用命令查看配置、格式是否正确:docker-compose config -q
  • docker-compose.yml
  • 使用命令 docker-compose up 一键安装 alt