关于docker容器的监控

标签: docker 容器 监控 | 发表时间:2017-03-20 16:18 | 作者:felix_yujing
出处:http://blog.csdn.net

1 docker inspect [容器ID | 镜像ID]
查看容器创建时间、容器的IP、映射的端口、挂载的目录等信息。
此命令同样也能用来查看镜像的详细信息。

2 docker stats 容器ID
用来查看容器的资源使用情况,如:CPU、内存、网络、I/O

另外,在docker的配置文件中添加如下的参数之后,可以采用curl来调用stats API接口

  DOCKER_OPTS="-H tcp://127.0.0.1:2375"

curl的使用命令如下:

  curl http://127.0.0.1:2375/containers/容器ID/stats 

返回的是json格式的字符流信息,使用ctrl+c中断

3 docker events
查看主机上发生的容器的创建、停止、销毁等容器生命周期相关的事件信息
可以结合以下选项参数执行命令:
–since 时间戳
–until 时间戳

提示:当前时间戳可以通过 date +”%s”命令查看

4 docker logs 容器ID
当进程在容器中是以前台运行的方式运行的时候,可以在宿主机上用这个命令来查看容器内运行的日志。

如果希望持续监控日志的化,可以使用-f选项:

  docker logs -f 容器ID

注意:docker logs是否可用还要看当前配置的log driver。默认的json-file日志驱动和journald日志驱动支持docker logs命令查看。

另外,可以使用[docker top 容器ID]命令来查看容器内运行的进程信息。

5 关于日志收集
1)配置log driver进行日志收集
在启动容器的时候,可以通过–log-driver选项来指定日志驱动。通过日志驱动,可以将日志传给syslog、journald、fluentd等。

2)通过logspout收集容器日志
logspout可以收集主机上所有容器的日志,并将它们转到其它主机。logspout以容器的方式运行,并且是无状态的。可以通过logspout将日志转发到syslog或logstash。
详细用法可参考: https://github.com/gliderlabs/logspout

6 监控容器的资源使用
cAdvisor项目是google创建的,用来监控容器的资源使用和性能。cAdvisor以容器的方式运行,可以监控所在主机上的所有容器;提供web UI界面;支持REST API;可以将数据流保存到influxdb。
详细参考: https://github.com/google/cadvisor
另外,除了cAdvisor,collectd( https://collectd.org/)也可以用来监控容器的资源指标。

7 使用InfluxDB,Grafana和cAdvisor监控容器指标
ELK之外的另一种选择方案。cAdvisor收集容器指标信息后,将数据存到时序数据库influxdb,Grafana从influxdb获取数据并展示。

8 使用ELK来存储和可视化容器日志
前面说到的logspout可以用来将各主机上的容器日志传给远程的logstash,再将日志存储到Elasticsearch,通过kibana来查询Elasticsearch索引,进行可视化展示。

9 weave scope工具将容器的布局/关联可视化
weave scope在github上的地址为:
https://github.com/weaveworks/scope

weave scope可以实时生成容器的相互调用的拓扑图,有助于直观的理解、监控和控制容器应用

参考资料:Docker Cookbook

作者:felix_yujing 发表于2017/3/20 16:14:17 原文链接
阅读:3 评论:0 查看评论

相关 [docker 容器 监控] 推荐:

关于docker容器的监控

- - CSDN博客推荐文章
1 docker inspect [容器ID | 镜像ID]. 查看容器创建时间、容器的IP、映射的端口、挂载的目录等信息. 此命令同样也能用来查看镜像的详细信息. 2 docker stats 容器ID. 用来查看容器的资源使用情况,如:CPU、内存、网络、I/O. 另外,在docker的配置文件中添加如下的参数之后,可以采用curl来调用stats API接口.

Docker容器的自动化监控实现

- - DockerInfo
2016年对于网易杭州研究院(以下简称“杭研”)而言是重要的,成立十周年之际,杭研正式推出了网易云. “十年•杭研技术秀”系列文章,由杭研研发团队倾情奉献,为您展示杭研那些有用、有趣的技术实践经验,涵盖云计算、大前端、信息安全、运维、QA、大数据、人工智能等领域,涉及前沿的分布式、 容器、深度学习等技术.

K8S/Docker中对于容器内存的监控 (www.ipcpu.com)

- - IT瘾-jianshu
在使用Docker或者Kubernetes时,我们经常需要监控容器或者Pod的内存,同时我们也经常收到反馈内存不准确的情况,这不仅是因为存在Buffer、Cache的影响,不同的算法指标也会得出不同的结果. 接下来我们先回顾下我们最古老的计算方法,然后分别取分析docker stats 和 kubectl top 中的内存计算方法.

Docker 监控实战

- - SegmentFault 最新的文章
如今,越来越多的公司开始使用 Docker 了,现在来给大家看几组数据:. 2 / 3 的公司在尝试了 Docker 后最终使用了它. 也就是说 Docker 的转化率达到了 67%,而转化市场也控制在 60 天内. 越大型的公司越早开始使用 Docker. 研究发现主机数量越多的公司,越早开始使用 Docker.

Docker 监控- Prometheus VS Cloud Insight

- - SegmentFault 最新的文章
如今,越来越多的公司开始使用 Docker 了,2 / 3 的公司在尝试了 Docker 后最终使用了它. 为了能够更精确的分配每个容器能使用的资源,我们想要实时获取容器运行时使用资源的情况,怎样对 Docker 上的应用进行监控呢. Docker 的结构会不会加大监控难度. 可是在没有专业运维团队来监控 Docker 的情况下,并且还想加快 Docker 监控的日程,怎么办呢.

Docker容器安全性分析

- - FreeBuf互联网安全新媒体平台
Docker是目前最具代表性的容器技术之一,对云计算及虚拟化技术产生了颠覆性的影响. 本文对Docker容器在应用中可能面临的安全问题和风险进行了研究,并将Docker容器应用环境中的安全机制与相关解决方案分为容器虚拟化安全、容器安全管理、容器网络安全三部分进行分析. 一、从虚拟化安全到容器安全 .

调试 Docker 容器内部进程

- - 掘金后端
摘要:本文以 Nebula Graph 进程为例,讲解如何不破坏原有容器的内容,也不用在其中安装任何的工具包前提下,像在本地一样来调试进程. 在开发或者测试过程中,我们经常会用到. vesoft-inc/nebula-docker-compose 这个 repo 下的部署方式,因为当初为了尽可能的压缩每个.

【实战】五个Docker监控工具的对比

- - ITeye资讯频道
【编者的话】这篇文章作者是Usman,他是服务器和基础架构工程师,有非常丰富的分布式构建经验. 该篇文章主要分析评估了五种Docker监控工具,包括免费的和不免费的:Docker Stats、CAdvisor、Scout、Data Dog以及Sensu. 不过作者还是推荐使用Data Dog. 另外还有两个工具:Prometheus与Sysdig Cloud会在下一篇做介绍分析,敬请期待.

在Docker中监控Java应用程序的5个方法

- -
作者:Chris Ward . 译者注:Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化. 通常情况下,监控的主要目的在于:减少宕机时间、扩展和性能管理、资源计划、识别异常事件和故障排除分析等. 本文作者介绍了5种方法帮助你在Docker中监控Java应用程序.

减少使用Java应用服务器,迎接Docker容器

- - ITeye资讯频道
【编者的话】随着Docker的发展,越来越多的应用开发者开始使用Docker. James Strachan写了一篇有关Java开发者如何使用Docker进行轻量级快速开发的文章. 他告诉我们,使用Docker和服务发现的机制,可以有效减轻Java运维人员的负担,进行项目的快速启动和持续迭代. 多年来,Java生态系统一直在使用应用服务器.