专栏名称: 云技术实践
关注云计算,云技术,云运维,云存储,存储,分布式,OpenStack,SDN,Ceph,虚拟化,运维,分享在云计算/虚拟化/运维项目实施中的资讯、经验、技术,坚持干货。
51好读  ›  专栏  ›  云技术实践

Prometheus 2.0在监控Docker和Kuberbetes方面有什么新特性

云技术实践  · 公众号  · 架构  · 2017-11-14 11:45

正文

摘要: Prometheus 2.0容器监控系统提供了更有效的时间序列数据存储格式,更好地处理陈旧的事件数据和基于快照的数据库备份


在云上运行,为docker容器设计的,开源监控系统Prometheus,已经正式发布了一个2.0版本,性能得到改进。


和1.6版本相比,有以下变化:


• 普罗米修斯收集的数据全新的存储格式。

• 普罗米修斯处理“过时”的一种新方法,处理当普罗米修斯报告的数据与集群的实际状态不匹配时产生的问题。

• 对整个数据库进行高效快照备份的新的方法。


大多数的变化不会强迫已有的普罗米修斯用户重新配置他们的环境。新功能尽管有一些突破性的更改,但改进的是引擎, 而不会显著改变工作流程, 详情请参阅可以参阅官方文档。


新的普罗米修斯2.0:更有效的时间序列数据库存储格式


Prometheus的引擎是一个时间序列数据库,用于收集关于运行容器的统计数据,并以时间戳为索引的方式存储它们。由于时间序列数据以高速和多种来源的方式到达,很难正确聚合。将数据写入磁盘将成为主要的瓶颈。


Prometheus 2.0通过对数据进行时间范围的划分而不是按照数据源来划分,解决这个问题。其结果是,CPU和磁盘使用量大大减少,查询的延迟更易于管理,更好的用于清理不再需要数据的机制。


再一次重申下,绝大多数的Prometheus部署都不需要做任何事情来利用这些改进,而不是重新部署到Prometheus 2.0。


普罗米修斯2.0新技术:更好地处理来自容器的陈旧数据

普罗米修斯用户注意到的另一个问题是,该系统如何处理过时的数据。例如,即使服务已经恢复了,用户有时会收到关于服务下降的警报。另一个问题是,如果一种资源从监控中消失,然后在一定时间内重新出现,它可能会被统计两次,并产生误导性的统计数据。


Prometheus 2.0处理这个问题的方法是,有更明确的规则来处理那些已经过时的事件。处理这一问题的逻辑非常复杂,但最终用户不必处理绝大多数的细节。


普罗米修斯2.0新技术:完整的数据库快照备份

在Prometheus 2.0中,新的存储引擎可以有效地利用数据库的时间点来做快照。触发快照就像调用一个特定的Prometheus API一样简单。


根据普罗米修斯公司的开发人员Fabian Reinartz的说法,这些快照只是整个数据库大小的小数部分,并且可以在某个地方进行复制以保存。“在磁盘故障或其他场景中,新的Prometheus服务器可以从快照备份开始,数据丢失最小,”Reinartz说。


下载普罗米修斯

预编译的二进制文件和Docker映像可以从Prometheus项目官方的页面下载。项目的源代码,以及所有相关的子项目,都可以在GitHub上找到。


相关阅读:

高端私有云项目交流群,欢迎加入!

震撼:AWS放弃XEN 改用KVM作为新的虚拟化引擎

英特尔挖了AMD的GPU首席架构师,将开发独立的GPU,对标英伟达







请到「今天看啥」查看全文