1 监控解决方案

cadvisor+influxdb+grafana

cAdvisor:Google开源的工具,用于监控Docker主机和容器系统资源,通过图形页面实时显示数据,但不存储;它通过宿主机/proc、/sys、/var/lib/docker等目录下文件获取宿主机和容器运行信息。

InfluxDB:是一个分布式的时间序列数据库,用来存储cAdvisor收集的系统资源数据。

Grafana:可视化展示平台,可做仪表盘,并图表页面操作很方面,数据源支持zabbix、Graphite、InfluxDB、OpenTSDB、Elasticsearch等

它们之间关系:

cAdvisor容器数据采集->InfluxDB容器数据存储->Grafana可视化展示

2 下载docker镜像

2.1 下载influxdb镜像

  1. docker pull tutum/influxdb

输出如下:

  1. Using default tag: latest
  2. latest: Pulling from tutum/influxdb
  3. a3ed95caeb02: Pull complete
  4. 23efb549476f: Pull complete
  5. aa2f8df21433: Pull complete
  6. ef072d3c9b41: Pull complete
  7. c9f371853f28: Pull complete
  8. a248b0871c3c: Pull complete
  9. 749db6d368d0: Pull complete
  10. db2492acfcc3: Pull complete
  11. b7e7d2e12d53: Pull complete
  12. 4272a53eef10: Pull complete
  13. 9b2fefdb5321: Pull complete
  14. Digest: sha256:5b7c5e318303ad059f3d1a73d084c12cb39ae4f35f7391b79b0ff2c0ba45304b
  15. Status: Downloaded newer image for tutum/influxdb:latest
  1. $ docker images
  2. REPOSITORY TAG IMAGE ID CREATED SIZE
  3. tutum/influxdb latest c061e5808198 years ago 290MB

2.2 下载cadvisor镜像

  1. $ docker pull google/cadvisor:latest
  2. latest: Pulling from google/cadvisor
  3. ff3a5c916c92: Pull complete
  4. 44a45bb65cdf: Pull complete
  5. 0bbe1a2fe2a6: Pull complete
  6. Digest: sha256:815386ebbe9a3490f38785ab11bda34ec8dacf4634af77b8912832d4f85dca04
  7. Status: Downloaded newer image for google/cadvisor:latest

镜像信息如下:

  1. $ docker images
  2. REPOSITORY TAG IMAGE ID CREATED SIZE
  3. google/cadvisor latest eb1210707573 months ago .6MB

2.3 下载grafana镜像

  1. $ docker pull grafana/grafana:latest
  2. latest: Pulling from grafana/grafana
  3. f7e2b70d04ae: Pull complete
  4. a0d6f8d6b78d: Pull complete
  5. f6dfdd9a4cc9: Pull complete
  6. a47b02586edb: Pull complete
  7. ac3d2f7cc2e4: Pull complete
  8. 857ef2887ebc: Pull complete
  9. Digest: sha256:e3796f399ae4f3f85e21807f88675d8ce2221b6011d3c3dd4e7eebce883f157b
  10. Status: Downloaded newer image for grafana/grafana:latest

镜像信息如下:

  1. $ docker images
  2. REPOSITORY TAG IMAGE ID CREATED SIZE
  3. grafana/grafana latest d20d0cdfb55e days ago 241MB

3. 启动监控

3.1 启动influxdb容器

  1. $docker run -d -p : -p : --name influxdb tutum/influxdb
  2. eeb5f0a22e4c75b779be62161ce58055b9e6f497f144cb509a96b6e1735b9786

启动后信息如下:

  1. $docker ps -a
  2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  3. eeb5f0a22e4c tutum/influxdb "/run.sh" seconds ago Up seconds 0.0.0.0:->/tcp, 0.0.0.0:->/tcp influxdb

3.2 启动cadvisor容器

  1. $docker run -d \
  2. --volume=/:/rootfs:ro \
  3. --volume=/var/run:/var/run:rw \
  4. --volume=/sys:/sys:ro \
  5. --volume=/var/lib/docker/:/var/lib/docker:ro \
  6. --link influxdb:influxdb \
  7. -p : \
  8. --name=cadvisor \
  9. google/cadvisor:latest \
  10. -storage_driver=influxdb \
  11. -storage_driver_db=cadvisor \
  12. -storage_driver_host=influxdb:

3.3 启动grafana容器

  1. $docker run -d \
  2. -p : \
  3. -e INFLUXDB_HOST=influxdb \
  4. -e INFLUXDB_PORT= \
  5. -e INFLUXDB_NAME=cadvisor \
  6. -e INFLUXDB_USER=cadvisor \
  7. -e INFLUXDB_PASS=cadvisor \
  8. --link influxdb:influxsrv \
  9. --name grafana \
  10. grafana/grafana

Docker系列08:容器监控的更多相关文章

  1. Docker系列01—容器的发展历程---Docker的生态圈

    本文收录在容器技术学习系列文章总目录 Docker 和容器技术的发展可谓是日新月异,本文试图以全局的视角来梳理一下 docker 目前的生态圈.既然是概览,所以不会涉及具体的技术细节. Docker ...

  2. Docker系列10—容器编排工具Docker Compose详解

    本文收录在容器技术学习系列文章总目录 1.Docker Compose 概述 Compose是一个用于定义和运行多容器Docker应用程序的工具.使用Compose,您可以使用Compose文件来配置 ...

  3. docker stack 部署容器监控方案(cAdvisor、Prometheus、Grafana)

    =============================================== 2018/7/8_第1次修改                       ccb_warlock === ...

  4. Docker系列08—搭建使用私有docker registry

    本文收录在容器技术学习系列文章总目录 1.了解Docker Registry 1.1 介绍 registry 用于保存docker 镜像,包括镜像的层次结构和元数据. 启动容器时,docker dae ...

  5. docker 系列 - 修改容器的 DNS 服务器

    # 查看容器的 dns 解析设置文件, 也可以检查docker 运行环境 DNS docker run busybox:latest cat /etc/resolv.conf # 为容器 mybusy ...

  6. Docker系列02: 容器生命周期管理 镜像&容器

    A) Docker信息1. 查看docker运行状态 systemctl status docker docker.service - Docker Application Container Eng ...

  7. docker系列之六容器数据卷

    docker之容器数据卷 一.容器数据卷 docker容器运行的时候,会产生一系列的文件,那么我们希望容器产生的数据能提供给其他的容器使用,也就是说怎么实现容器间的数据的共享呢?这就需要用到我们所提到 ...

  8. 你必须知道的容器监控 (1) Docker自带子命令与Weave Scope

    本篇已加入<.NET Core on K8S学习实践系列文章索引>,可以点击查看更多容器化技术相关系列文章.本篇会介绍几个目前比较常用且流行的容器监控工具,首先我们来看看Docker自带的 ...

  9. Docker系列——Grafana+Prometheus+Node-exporter服务器监控平台(一)

    在最近的博文中,都是介绍监控平台的搭建,其实并不难,主要是需要自己动手操作,实践一番就会了. 有天在想,云上的服务器,是不是也可以搭建一个监控平台,所以就捣鼓了一下,不过遗憾的是,使用阿里云开源的插件 ...

随机推荐

  1. mysql中关于关联索引的问题——对a,b,c三个字段建立联合索引,那么查询时使用其中的2个作为查询条件,是否还会走索引?

    情况描述:在MySQL的user表中,对a,b,c三个字段建立联合索引,那么查询时使用其中的2个作为查询条件,是否还会走索引? 根据查询字段的位置不同来决定,如查询a,     a,b    a,b, ...

  2. jquery promise (Deferred)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  3. ionic3 使用swiper插件 实现轮播效果

    由于app的更新迭代 我需要完成新版本设计图的开发 刚开始就遇到一个问题  首页的banner图需要实现某种效果 而ionic3自带的轮播图效果怎么改都改不到我想要的效果 效果图如下  自动播放 不断 ...

  4. the implemention of redblack tree

    public class redbalcktree { private class Node{ private int val; private int key; boolean color; //b ...

  5. 蓝牙协议分析(6)_BLE地址类型

    1. 前言 也许关注BLE的同学都注意到了,BLE设备有多种类型的设备地址,如Public Device Address.Random Device Address.Static Device Add ...

  6. 9--Python入门--模块

    模块简单来说是一个保存了python代码的文件很多python开源库就是模块 #例如我们调用科学计算库 numpy import numpy as np #as np是为了之后方便调用 from pa ...

  7. React Native 继续学习

    下一个项目公司也打算使用react native.大致看了下原型设计,写几个小demo先试试水.特此记录下. 1.微信及朋友圈分享.QQ及朋友圈分享,微博分享,微信支付,支付宝支付. 2.导航条渐隐 ...

  8. win10下VM 中centos 安装共享文件

    一.  安装VMware Tools VMwareTools的安装脚本是要使用到perl的,而CentOS 6自身不带perl,所以需要自己安装.可以自己下载源代码编译,也可以直接用yum来安装. y ...

  9. ffmpeg 视频 转 gif

    将视频 MP4 转化为 GIF ffmpeg -i small.mp4 small.gif 转化视频中的一部分为 GIF ffmpeg -t -ss :: -i small.webm small-cl ...

  10. Linux命令学习之路——内容剪切:cut

    使用者:所有角色 用法:cut [ -bcdfn ] [ --complement ] filename 作用:截取文件中的部分字段用于展示或存储到新文件中 应用场景: 1.内容展示 : 截取一个或多 ...