DCOS之监控技术选型(中)
这一章节我们来比较监控容器的常用工具。将基于以下标准评估这些工具:
1、难易程度
2、监控指标的详细度
4、告警能力
5、监控目标多样性
6、成本
付费监控
1.1. Sematext
Sematext 是一款付费监控解决方案,计划收费方案是3.5美分/小时。同样也支持 Docker 监控,还包括对容器级事件的监测(停止、开始等等)和管理容器产生的日志。
1、难易程度 :较难
2、监控指标的详细度:一般
4、告警能力: 无
5、监控目标多样性:一般
6、成本:付费
1.2. Scout
Scout也是一款付费监控的解决方案,它能够从很多主机和容器中获得各项监测数据,并将数据呈现在有更长时间尺度的图标中。它也可以基于这些指标生成警报。它有 大量的插件,除了Docker信息他们可以吸收其他有关你的部署的数据。这使得Scout是你的一站式监控系统,而无需对系统的各种资源来安装各种不同的监控系统。
Scout的一个缺点是,它不显示有关每个主机上像CAdvisor的单独容器的详细信息并且每个监控的主机十美元。
1、难易程度 :容易
2、监控指标的详细度:一般
4、告警能力: 一般
5、监控目标多样性:一般
6、成本:付费
1.3. Data Dog
Data Dog同样也是一款付费监控的解决方案,Datadog 是 SaaS 监测工具,针对 DevOps 团队,从你的 app 或者其他各种工具获取数据并提供数据可视化功能。它把从你基础设备和软件采集的数据统一处理并存储。允许你创建仪表盘和搜索访问你提供的数据。他们目前提供数据的聚合和展示而不是提供数据分析。Datadog 尚未提供太多数据统计功能,做为一个监控软件,这些功能可能恰恰是你正在寻找的。他们还需要植入你的代码,这会产生代码依赖。
DataDog相比scout在某些功能上做了显著地改善,方便使用以及用户友好的设计。然而这一级别伴随着额外的成本,因为每个DataDog agent价格为十五美元。
1、难易程度 :容易
2、监控指标的详细度:较好
4、告警能力: 较好
5、监控目标多样性:一般
6、成本:付费
2.1. Docker Stats
想要查看容器统计信息只需运行docker stats [CONTAINER_NAME]。这样就可以查看每个容器的CPU利用率、内存的使用量以及可用内存总量。请注意,如果你没有限制容器内存,那么该命令将显示您的主机的内存总量。但它并不意味着你的每个容器都能访问那么多的内存。另外,还可以看到容器通过网络发送和接收的数据总量。
1、难易程度 :容易
2、监控指标的详细度:较好
4、告警能力: 无
5、监控目标多样性:无
6、成本:免费
2.2. CAdvisor
CAdvisor提供了docker stats命令所显示的数据的可视化界面,执行CAdvisor容器,并在浏览器里访问http://hostname:8080/可以看到CAdvisor的界面,将看到CPU的使用率、内存使用率、网络吞吐量以及磁盘空间利用率,可以通过点击在网页顶部的Docker Containers链接,然后选择某个容器来详细了解它的使用情况。
CAdvisor是一个易于设置并且非常有用的工具,不用非要SSH到服务器才能查看资源消耗,而且它还给我们生成了图表。此外,当集群需要额外的资 源时,压力表提供了快速预览。另外,它的资源消耗也比较低。但是,它有它的局限性,它 只能监控一个Docker主机。因此,如果你是多节点的话,就需要另外的组件对多主机的监控数据进行汇聚。
1、难易程度 :容易
2、监控指标的详细度:较好
4、告警能力: 无
5、监控目标多样性:无
6、成本:免费
2.3. Sensu
Scout和Datadog提供集中监控和报警系统,然而他们都是被托管的服务,大规模部署的话成本会很突出。要运行Sensu服务器可以使用容器。这个容器会安装sensu-server、uchiwa Web界面、Redis、rabbitmq-server以及sensu-api。不幸的是sensu不支持Docker。但是,使用插件系统,您可以配置支持容器指标以及状态检查。
Sensu支持我们所有的评价标准,你可以对我们Docker容器和主机收集尽可能多的细节。此外,你能够聚合所有主机的值到一个地方,并对这些检查发出 警报。这些警报并没有DataDog或Scout的先进,因为你仅能够提醒单独的主机上检查失败。然而,Sensu的大缺点是部署的难度。虽然我 已经使用Docker容器自动部署许多步骤,Sensu仍然是一个需要我们安装,启动和分开维护Redis、RabitMQ、Sensu API、uchiwa与Sensu Core的复杂系统。
1、难易程度 :难
2、监控指标的详细度:较好
4、告警能力: 一般
5、监控目标多样性:较好
6、成本:免费
2.4. Prometheus
Prometheus 由 SoundCloud 发明,适合于监控基于容器的基础架构。Prometheus 特点是高维度数据模型,时间序列是通过一个度量值名字和一套键值对识别。灵活的查询语言允许查询和绘制数据。它采用了先进的度量标准类型像汇总(summaries),从指定时间跨度的总数构建比率或者是在任何异常的时候报警并且没有任何依赖,中断期间使它成为一个可靠的系统进行调试。
如果你使用指标名字直接作为一个查询表达式,它将返回有这个使用这个指标名字作为标签的所有时间序列。使用 Prometheus 的查询语言,你可以对你想的任何维度的数据切片和切块。如果你对一个给定名字的所有容器感兴趣,你可以使用一个表达式像container_memory_usage_bytes{name="consul-server"} ,这个将仅仅显示name == "consul-server" 的时间序列。像多维度的数据模型,来实现数据聚合、分组、过滤,不单单是 Prometheus。OpenTSDB 和 InfluxDB 这些时间序列数据库和系统监控工具的结合,让系统监控这件事情变得更加的多元。
1、难易程度 :容易
2、监控指标的详细度:较好
4、告警能力: 较好
5、监控目标多样性:较好
6、成本:免费
Docker 的监控相比其他的数据库、系统、中间件监控,要复杂一些。由于需要表征不同 Container 的性能消耗,来了解不同应用的运行情况,所以数据的聚合、切片(分组)和过滤,在 Docker 监控中成为了必备功能。 除了监控Docker 以外,DCOS系统还需监控其他组件,如果一个工具在监控 Docker 同时能够监控其他组件,那就更好了,根据以上的对比,选择Prometheus与Cadvisor进行DCOS监控。
查看原文:http://www.zoues.com/index.php/2016/07/04/dcos-docker-monitor/
DCOS之监控技术选型(中)相关推荐
- APM系统监控技术选型
APM技术选型对比 1.概览 Pinpoint SkyWalking Zipkin(Spring cloud 整合) Jaeger 所属公司/组织 韩国 Apache Twitter Uber 组件 ...
- *******系统监控技术选型
中国*******银行系统监控架构说明 *张磊 2020-03-16 * **系统监控,经前期技术选型及调研,采用prometheus+influxdb+grafana开源架构,通过prometheu ...
- 系统监控——监控系统选型分析及误区探讨
本文摘自于朱政科撰写的<Prometheus 云原生监控:运维与开发实战>,重点介绍了在监控系统选型中应该考虑的问题.在本文中,你将会了解监控应用程序的黑盒和白盒方法,也会了解监控执行检查 ...
- 监控之美——监控之美-监控系统选型分析及误区探讨
朱政科 读完需要 29 分钟 速读仅需 10 分钟 本文摘自于朱政科撰写的<Prometheus 云原生监控:运维与开发实战>,重点介绍了在监控系统选型中应该考虑的问题. 上一期监控之美- ...
- 系统存储(19)——图片服务器:需求和技术选型
1.概述 图片服务系统是各种针对C端系统常见的子系统,它的特点是存储规模大请求频度高,且单张图片的读请求远远高于写请求.后续几篇文章我们将从图片服务系统的需求分析开始,一起来讨论如何进行这类系统的技术 ...
- 我用ChatGPT做直播技术选型,卷死了同事
摘要 近两年即时通讯/直播产品炙手可热,市场上针对ToB的产品日益增多,企业该如何去选型呢?本文分享了笔者对于直播产品的思考,将从直播SDK实例功能特性.常见业务场景.注意事项及最佳实践等方面介绍如何 ...
- 透过大型企业成功案例,看 IoT 物联网平台技术选型
从车联网到工业互联网,从运营商到金融支付,从能源电力到智慧城市,EMQ 与全球各行业近400家企业客户一起通过物联网创造更美好的世界. 今天我们梳理了16家国内企业客户成功案例,为在企业IoT技术选型 ...
- 项目中怎样做技术选型
引出四个维度 工作快十五年了,从十年前开始经常会有新项目,需要从头开始做方案和设计.做技术选型很少成为我的难题.不是因为这方面我多有方法,而通常是很少有选择.在做技术选型的场景下基本有以下四个维度: ...
- 58转转技术总监骆俊武:监控系统选型?必读本篇!
中生代技术 链接技术大咖,分享技术干货 全文:6000字 之前,我写过几篇有关「线上问题排查」的文章,文中附带了一些监控图,有些读者对此很感兴趣,问我监控系统选型上有没有好的建议? 目前我所经历的几家 ...
最新文章
- SyntaxHighlighter -- 代码高亮插件
- java修改动态视频,直播视频app源码,动态修改cron
- python实现文件下载-Python实现http文件下载
- 2018年安卓绿色联盟数据报告
- BLE-NRF51822教程5-静态密码设置
- java 基本类型 引用_java中 引用类型 和 基本类型 有何区别?
- Android笔记:Activity
- jira集成开发代码_7种JIRA集成可优化您的Java开发流程
- 三星w系列vip服务器,高端人士候机专属特权 三星W2017一张行走的VIP卡
- python 基本数据结构 ndarray
- Flask成长笔记--在Flask中加密的方式
- springBoot+Mybatis注解大全
- mysql 开启用户远程登录
- myeclipse 7.5 for linux and windows
- mysql书籍知识点梳理3(数据与表)
- mc正版服务器 创世神插件,我的世界创世神插件WorldEdit怎么安装
- 测试手机功耗软件,借助软件测试手机基本峰值功耗
- moments音标_moment是什么意思_ moment的翻译_音标_读音_用法_例句_爱词霸在线词典...
- I2C通讯常见问题汇总
- java读取地址栏参数(id=123name=xiaoxiao)