部署Prometheus需要考虑的六个方面

当需要进行云监控时,IT团队越来越多地倾向于Prometheus,它是由云原生计算基金会开源的项目。

企业在采用容器的同时,也将容器的监控问题放在了比较优先的位置上,不少企业使用普罗米修斯(Prometheus)监控容器和微服务,对于规模企业通常会更加激进,所以当他们规模部署时将面临扩展的挑战。

容器使情况复杂化

监控整体环境过去相对简单,企业具有一定数量的静态物理服务器和虚拟机,以及数量有限的指标。现在由于容器以及向微服务架构的迁移,要跟踪的实体数量激增。

容器的数量不断增加,有时每台机器上有数百台,而新的机器也在增加,并且与Kubernetes等编排工具一起使用时,使得容器的寿命可能非常短,使得跟踪它们变得更加困难,并且如果不小心的话,它们可能会造成很多问题。

随着环境的复杂性和分布的增加,需要监控的实体数量也在增加。此外,你可能希望监控更多属性,来确保对所发生的事情有准确的了解,或者在进行故障排除或事件响应的情况下,可以了解所发生的事。在这些短暂的环境中,故障的排除尤其成问题,因为当你想了解问题的根本原因时,通常有问题的资源已经停用,这意味着监控解决方案必须提供一种存储足够的历史记录来进行取证的方法。

Prometheus

当需要进行云监控时,IT团队越来越多地倾向于Prometheus,它是由云原生计算基金会开源的项目。Prometheus已成为开发人员在云原生环境中收集和理解指标的首选监控工具。它由一个大型社区支持,有超过700多家企业贡献者。

默认情况下,典型的云原生应用程序堆栈(例如Kubernetes,Ngnix,MongoDB,Kafka和golang)会公开Prometheus指标。Prometheus被设计为可垂直缩放的Go程序。例如,将其轻松部署为单个容器或单个主机。这意味着从Prometheus入门很容易就能了解你的Kubernetes集群。但这也意味着随着基础架构的增长,监控规模也面临极限的挑战。

规模问题

随着环境的发展,需要跟踪的时间序列数据数量激增,在某个特定点上,单个Prometheus实例将无法跟上。直接的选择是在整个企业中运行一批Prometheus服务器,但这也带来了一些挑战。例如,管理和联合数十或数百个Prometheus服务器上的数据并不容易。类似地,确定企业工作流、单点登录、基于角色的访问控制以及遵守SLA或遵从性也不是容易的问题。随着应用程序的增长,在不中断开发人员工作的情况下操作一个包罗万象的监控解决方案将成为一个巨大的可管理性和可靠性问题。

为了解决这个问题,企业采用了一些方法。

简单的第一步是为每个名称空间或每个集群使用单独的Prometheus服务器。这种方法显然很难扩展到某个特定的点,除此之外,它还有创建大量断开连接的数据孤岛的缺点。这使得故障排除变得很麻烦,因为大多数问题将跨越多个服务/团队/集群。不仅很难在每个环境中找到相同的度量标准,而且还必须将数据结合起来,试图理解正在发生的事情。

另一种常见的方法是使用如Cortex或thanos等开源工具来联合多个Prometheus服务器。它们是功能强大的工具,能够以集中的方式查询服务器,收集数据,然后在单个仪表板中共享数据。然而,与任何数据密集型分布式系统一样,它们需要大量的技能和资源来操作。

要考虑的六个因素

对于那些从Prometheus开始,然后寻找商业解决方案来提供整体监控的企业来说,重要的是不要失去所有在Prometheus标准化的开发工作,如仪表盘、警报等工作。然而,这不是你应该考虑的唯一,下面的这些因素或许对你有帮助。

1. 兼容性,支持所有Prometheus功能

企业选择的云供应商、工具或SaaS解决方案需要能够使用任何可产生Prometheus指标的数据,无论是本地Kubernetes还是任何的云服务。Prometheus指标相对来说比较琐碎,但不要忽略一些小事情,例如将指标提取到存储中或扩充数据时能够重新标注指标,这样对环境更加有意义。这些事情叠加,在使用大量收集的数据方面会产生很大的不同。

2. PromQL兼容性

Prometheus查询语言用于提取Prometheus存储的信息。PromQL能够询问有关指标,例如特定服务或特定用户。它还允许聚合或分段数据,例如可以使用它在应用程序基础上显示所有容器的CPU利用率,或者仅显示Cassandra容器的数据,并将其显示为每个集群的单个值。所以,PromQL解锁了Prometheus的真正价值;因此,在不完全支持PromQL的产品中加入Prometheus度量标准会破坏使用Prometheus的目的。

3. 热插拔

要真正与Prometheus兼容,解决方案必须是可热插拔的,以便能够与现有的仪表板、警报和脚本一起工作。例如,许多使用Prometheus的企业使用Grafana作为仪表盘。这个开源工具与Prometheus很好地集成在一起,包括在查询级别,并且可以用于生成一系列有用的图表和指示板。因此,那些声称与Prometheus兼容的商业产品应该与Grafana这样的工具兼容。仅仅说解决方案可以在Grafana中查看数字是不够的。需要能够按原样提取现有的Grafana仪表板,并将它们重新应用于商业解决方案中的数据。

4. 访问控制

访问控制是评估工具时应该考虑的另一个安全问题。通过使用行业标准协议(包括LDAP、谷歌Oauth、SAML和OpenID)来确保用户身份验证的安全,企业能够通过基于服务的访问控制来隔离和保护资源。

5. 故障排除

Kubernetes简化了容器化应用程序和微服务的部署、伸缩和管理。这有助于保持服务的正常运行,但是要识别和解决底层问题,比如性能下降、失败的部署和连接错误,需要能够收集和可视化来自生产环境的深入基础设施、应用程序和性能数据。不能同时访问实时信息和上下文数据,就几乎不可能在环境中关联度量,从而更快地解决问题。

6. 现有警报的兼容性

最后,如果你正在寻找一个商业答案来帮助解决Prometheus可伸缩性问题,请确保它支持所有级别的警报。实现这一点的关键是完全支持警报管理器功能,这反过来需要100%的和PromQL兼容性。

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/215424.html<

(0)
管理的头像管理
上一篇2025-04-12 06:12
下一篇 2025-04-12 06:13

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注