首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

10分钟知晓这些Docker监控工具

监控工具是方便您的操作顺利运行的有力保证。如果配置正确,日志和可视化数据可以在排除故障时发挥巨大作用。以下是一些Docker监控工具,您可以根据自己的需求选择适合您的环境的工具。

Docker Stat

每个Docker容器都附带一个预配置的监控工具Docker Stat。该命令提供Docker CPU利用率、内存使用情况,内存限制和网络IO度量标准的统计信息。

$ docker stats [CONTAINER...]

第一个命令“docker”是docker CLI的基本命令。您可以指定一个或多个由空格分隔的容器来获取每个容器的信息。以下命令将显示在Linux守护进程上运行的所有容器的详细信息:

$ docker stats

要获取有关容器资源使用情况的更多详细信息,请使用/containers /(id)/ stats API命令。以下是执行完该命令后输出的快照:

它最大的优点是免费的,并且是Docker容器附带,因此不需要像第三方工具那样进行任何配置设置。您可以通过几个命令的变化获得有关各种指标的详细信息。

它的缺点是不像其他监控工具,它只限于Docker,不能展示其他与Docker并行运行的其他资源的统计。其最大的局限在于,如果出现任何问题,因为仅基于CLI,那么肯定无法生成警报。

cAdvisor

cAdvisor是查看容器的资源使用情况和性能特征的另一个工具。 cAdvisor拥有对Docker的本地支持,但也可以与任何其他容器一起使用。

cAdvisor提供了您的码头统计信息的可视化表示。一旦你有你的机器上配置和运行CAdvisor。您可以通过在Web浏览器中输入http://localhost:8080来访问其Web界面。此Web界面将提供总CPU利用率,内存使用情况,网络吞吐量和磁盘空间利用率的统计信息。您可以通过单击“Docker容器”链接并选择要查看的容器来查看特定容器的统计信息。下图显示了主机的总CPU使用情况:

cAdvisor是免费开放源代码,可以很容易地在一个集群上配置。

不利的一面是,它只能监视一个docker主机,不适合多节点部署,因此你的统计信息将不相交,并散布在整个集群中。图表中的移动数据只有一分钟,如果您想增加计时是无法选择的。像docker Stats一样,cAdvisor也不会触发警报,也不会提供监视非docker资源的选项。

Scout

Scout是一个新的服务器监端控应用程序,允许自动监控关键指标,拥有80多个插件用于监控您的应用程序,实时(每秒)流式仪表板并提供警报功能。

其中“docker-scout”是一个插件,是基于Scout应用程序的容器,你可以使用它来监视您docker环境中的主机和容器。Scout为您提供了在主机上运行的所有内容的详细信息,例如CPU使用情况和内存使用情况,这些并不仅限于在docker内运行的特定进程。

在配置了“docker-scout”插件后,可以从容器中导入数据,如CPU使用率、内存使用率网络吞吐量以及每个主机的容器数量。数据以统计形式以及图形形式提供。

缺点是与cAdvisor不同,它不提供每个主机上运行的各个容器的详细信息。如果您在同一台服务器上托管不同的容器,这是一个严重的限制。另外,这些附加功能的价格,每个监控主机十美元。

Datadog

使用Datadog,您可以使用每个主机的一个Datadog代理程序获取在主机上运行的所有Docker的Docker指标数据。有两种方法可以直接在每个主机上或在docker-dd-agent容器中运行Datadog Agent。

使用Datadog,您可以看到主机上运行的所有容器的指标,如CPU使用率、内存和I/O。此外,您还可以计算运行和停止的容器以及图像的数量。

Datadog有一个交互式仪表板,可以让您创建任何性能指标的图表。使用Datadog Monitor功能,您可以设置警报,以防某些指标超过阈值。您还可以获取某些指标的汇总数据,以帮助调试问题或从数据中提取特定的信息,所有这些都包含在Metrics Explorer功能中。

Datadog远远超过了目前为止讨论的三个,但在不利的方面,每个代理商收取15美元的费用。

Sensu Monitoring Framework

Sensu是一个免费的开放源代码和自我托管的集中度量服务。您可以使用hiroakis / docker-sensu-server容器来运行Sensu。 Sensu没有对Docker的本地支持,但是您可以使用插件配置对容器指标的支持以及状态检查。

Sensu是一款功能强大的监控工具。您可以尽可能多地获取有关主机和Docker容器的详细信息。您还可以汇总数据,并在汇总的数据上设置警报。

不利的一面,Sensu提醒并不是那么先进。虽然有很多功能,但使用Docker配置并不容易,您必须话费一定的精力才能使其与Docker一起工作。

Sysdig Cloud

Sysdig云是一项托管服务,具有完整的监控功能,如度量存储、聚合、可视化和警报。要首先使用Sysdig Cloud,则必须注册到其站点,并且必须使用Sysdig配置docker环境,才能开始使用Sysdig Cloud进行监视。

完成配置后,您可以在Sysdig云中看到CPU使用率、内存消耗、网络使用率等数据。这些指标是针对主机汇总的,也是按照每个容器细分的。Sysdig很容易设置,为图表提供实时和历史数据的详细输出。Sysdig中的警报系统是迄今为止我们所见到的其他五个中最好的。

Sysdig云的价格模型不清晰,一旦解决这个问题,将是最好的监测工具。以下是Sysdig云仪表板的视图:

总结

我们已经看到了六个Docker监控工具,免费和付费皆有之。由于DataDog只需一个命令便可轻松设置,因此DataDog具有优势,所有主机都可以在统一位置报告指标,还可以分析历史数据。Datadog也支持警报。Datadog每台主机15美元的价格使其成为大型设备的昂贵选择。

对于更大的部署,自由和开源的Sensu是一个理想的选择。但是,这种免费功能的代价是复杂性。最后想说,没有适合所有场景的的监控工具,因为你需要的监控工具完全取决于你的要求。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171212G0AKE600?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券