资讯专栏INFORMATION COLUMN

prometheus比zabbix好在哪点?

skinner / 1237人阅读

摘要:拥有活跃的社区,在上获得的数超过了万,符合网易云的选择。当然,也有一些不足,比如不能用于日志监控分布式追踪等范围,所以网易云也做了很多设计和优化。

分享网易云轻舟微服务选择基于 Prometheus 开发微服务监控系统的考量:

开源

云原生

与微服务监控需求的匹配度很高

开源

Prometheus是CNCF(云原生计算基金会)旗下成熟的开源项目,而开源技术栈是网易云坚定不移的选择,不仅因为选择主流开源项目可以站在巨人的肩膀上创新,规避重复造轮子的浪费,更因为开源开放让客户无需担心厂商锁定。Prometheus拥有活跃的社区,在GitHub 上获得的 star 数超过了 2 万,符合网易云的选择。

云原生

作为CNCF组织第二个毕业的开源项目,Prometheus与它的“师兄”Kubernetes都自带云原生的光环,天然能够友好协作,而网易云轻舟微服务另一个重要组件——容器服务正是基于开源Kubernetes深度定制优化的(当然轻舟微服务的服务治理设计是基础设施无关的,同时支持物理机、VM和容器)。

目前,轻舟微服务监控系统所有组件及配置均实现容器化并由 Kubernetes 编排,理论上,在任意 Kubernetes 集群里都能够一键部署,系统需要变更时,仅需修改相关编排文件,即可完成改变。

与微服务监控需求的匹配度很高

微服务监控有四大难点:

配置难:监控对象动态可变,无法进行预先配置;

融合难:监控范围非常繁杂,各类监控难以互相融合;

排查难:微服务实例间的调用关系非常复杂,故障排查会很困难;

建模难:微服务架构仍在快速发展,难以抽象出稳定的通用监控模型。

Prometheus 有五大优势:

灵活的数据模型:在 Prometheus 里,监控数据是由值、时间戳和标签表组成的,其中监控数据的源信息是完全记录在标签表里的;同时 Prometheus 支持在监控数据采集阶段对监控数据的标签表进行修改,这使其具备强大的扩展能力;

强大的查询能力:Prometheus 提供有数据查询语言 PromQL。从表现上来看,PromQL 提供了大量的数据计算函数,大部分情况下用户都可以直接通过 PromQL 从 Prometheus 里查询到需要的聚合数据;

健全的生态:Prometheus 能够直接对常见操作系统、中间件、数据库、硬件及编程语言进行监控;同时社区提供有 Java/Golang/Ruby 语言客户端 SDK,用户能够快速实现自定义监控项及监控逻辑;

良好的性能:Prometheus 提供了 PromBench 基准测试,从最新测试结果来看,在硬件资源满足的情况下,Prometheus 单实例在每秒采集 10万条监控数据的情况下,在数据处理和查询方面依然有着不错的性能表现;

更契合的架构:采用推模型的监控系统,客户端需要负责在服务端上进行注册及监控数据推送;而在 Prometheus 采用的拉模型架构里,具体的数据拉取行为是完全由服务端来决定的。服务端是可以基于某种服务发现机制来自动发现监控对象,多个服务端之间能够通过集群机制来实现数据分片。推模型想要实现相同的功能,通常需要客户端进行配合,这在微服务架构里是比较困难的。

当然,Prometheus 也有一些不足,比如不能用于日志监控、分布式追踪等范围,所以网易云也做了很多设计和优化。

文章来源: 网易云社区

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/25408.html

相关文章

  • 容器监控实践—Dockbix

    摘要:一概述意为,即使用来监控容器的插件或者模块,既然有专业的等容器监控方案,为什么还要用传统的呢在刚出现时,还没有专业的容器监控方案公司已有的成熟实践,想直接集成到中虽然不太优雅使用来监控有几种方案,比如自己写,利用的获取信息,暴露接口给采集使 一.概述 Dockbix意为docker+zabbix,即使用zabbix来监控docker容器的插件或者模块,既然有专业的cadvisor、pr...

    sunnyxd 评论0 收藏0
  • 容器监控实践—Dockbix

    摘要:一概述意为,即使用来监控容器的插件或者模块,既然有专业的等容器监控方案,为什么还要用传统的呢在刚出现时,还没有专业的容器监控方案公司已有的成熟实践,想直接集成到中虽然不太优雅使用来监控有几种方案,比如自己写,利用的获取信息,暴露接口给采集使 一.概述 Dockbix意为docker+zabbix,即使用zabbix来监控docker容器的插件或者模块,既然有专业的cadvisor、pr...

    huaixiaoz 评论0 收藏0
  • 容器监控实践—Dockbix

    摘要:一概述意为,即使用来监控容器的插件或者模块,既然有专业的等容器监控方案,为什么还要用传统的呢在刚出现时,还没有专业的容器监控方案公司已有的成熟实践,想直接集成到中虽然不太优雅使用来监控有几种方案,比如自己写,利用的获取信息,暴露接口给采集使 一.概述 Dockbix意为docker+zabbix,即使用zabbix来监控docker容器的插件或者模块,既然有专业的cadvisor、pr...

    xiongzenghui 评论0 收藏0

发表评论

0条评论

skinner

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<