作者:By Luc Perkins
Prometheus是用于监控和可观察性的标准开源解决方案之一。 Prometheus于2012年起源于SoundCloud,迅速获得广泛采用,后来成为首批CNCF项目之一,第二个毕业项目(仅次于Kubernetes)。它被许多具有前瞻性思维的公司用于生产,包括DigitalOcean、Fastly和Weaveworks等重量级公司,并拥有自己的年度会议PromCon。
Prometheus:强大但有意地限制
Prometheus之所以成功,部分原因是核心Prometheus服务器及其各种补充程序,如Alertmanager、Grafana和导出生态系统,形成了一个引人注目的端到端解决方案,解决了一个至关重要的难题。但是,Prometheus并没有提供你期望从一个成熟的“即服务”平台中获得的一些功能,例如多租户、身份验证和授权以及内置的长期存储。
Cortex于9月作为沙箱项目加入CNCF,是一个开源的Prometheus即服务平台,旨在填补这些空白,从而提供完整、安全、多租户的Prometheus体验。我会在以下说很多关于Cortex的,首先,让我们短暂地游览更熟悉的Prometheus世界。
为何选择Prometheus?
作为CNCF开发者的倡导者,我有机会熟悉Prometheus社区和Prometheus作为工具(主要研究文档和Prometheus Playground)。由于各种原因,它的巨大成功对我来说并不奇怪:
为何选择Prometheus即服务?
早期,Prometheus的核心工程师做出明智的决定,让Prometheus保持简洁和可组合。从一开始,Prometheus设计成可以很好地完成一小部分工作,并与其他可选组件无缝协作(而不是让Prometheus负担过重,增加了一系列硬编码功能和集成)。以下是Prometheus设计范围外的一些内容:
为何选择Cortex?
作为Prometheus即服务平台,Cortex充分填补所有这些关键缺口,为即使是最苛刻的监控和可观察性使用案例,提供了完整的开箱即用解决方案。
Cortex的架构
Cortex具有基于服务的设计,其基本功能分为单个用途组件,可以独立扩展:
这些组件每一个都可以独立管理,这是Cortex可扩展性和运营的关键。你可以在下面看到Cortex及与其交互的系统的基本图表:
如图所示,Cortex“完成”Prometheus监控系统。要适应现有的Prometheus安装,你只需重新配置Prometheus实例以远程写入Cortex群集,Cortex将处理其余部分。
多租户
单租户系统往往适用于小型用例和非生产环境,但对于拥有大量团队、用例和环境的大型组织而言,这些系统变得站不住脚(没有双关语意)。为了满足这些大型组织的严格要求,Cortex不是作为附加组件或插件提供多租户,而是作为头等功能。
多租户被编织到Cortex的结构中。从Prometheus实例到达Cortex的所有时间序列数据,都在请求元数据中标记所属于的特定租户。从那里,该数据只能由同一个租户查询。警报也是多租户,每个租户都可以使用Alertmanager配置设定自己的警报。
从本质上讲,每个租户都有自己的系统“视图”,其自身以Prometheus为中心的世界。如果你以单租户的方式使用Cortex,你可以随时扩展到无限大的租户群。
用例
经过几年的发展,Cortex的用户倾向于分为两大类:
Cortex、Prometheus的生态系统和CNCF
Cortex有一些非常引人注目的技术特性,但在当前的行业氛围下,我也认为指出其开源特性也很重要:
通过在CNCF沙箱中添加Cortex,现在CNCF保护伞下有三个与Prometheus相关的项目(包括Prometheus本身和OpenMetrics)。我们知道监控和可观察性是云原生范式的重要组成部分,我们很高兴看到围绕Prometheus社区有机出现的一些核心基础的持续融合。Cortex项目正在大力推进这项工作,我很兴奋Prometheus生态系统的Prometheus即服务分支成型。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有