基于开源自建 Prometheus,会遇到哪些问题?
使用开源 Prometheus 需要自行购买相关资源并部署系统(简称自建)。由于开源 Prometheus 自身的短板,自建 Prometheus 也给企业带来了不少困扰。
1. 对于中小企业,使用成本高
自建 Prometheus 的使用成本,包括机器资源成本和人力成本,最主要的是人力成本。其中人力成本又包括:
前期调研成本
中期搭建成本
后期维护成本
由于中小企业的运维团队规模较小,一般不多于5人,有的甚至只有一两个人,要自建和维护一套 Prometheus 监控服务,显然非常吃力。
2. 对于大企业,可扩展性差,容易出现性能瓶颈
大企业或快速发展的中型企业,在业务发展初期自建 Prometheus 监控,但随着业务量高速的增长,意味着更多资源的投入,对监控也有了更高的要求。自建 Prometheus 就会开始暴露出可扩展性差、性能瓶颈的问题,使企业运维面临巨大的挑战。
腾讯云 Prometheus 与自建 Prometheus 功能对比
对比类型 | 具体功能 | 腾讯云 Prometheus 监控 | 自建 Prometheus 监控 |
数据集成 | 集成腾讯云容器服务 | 一键自动集成 | 手动接入,配置复杂 |
| 跨 VPC/跨地域集成容器 | 自动支持 | 需自行做网络的打通 |
| 集成基础云产品数据 | 一键安装 | 需自行安装 Exporter |
| 常用监控组件集成 | 一键安装 | 需自行安装 Exporter |
| 标签自动识别资源变化 | 支持 | 不支持 |
可视化 | 关联 Grafana 可视化 | 支持快速关联托管 Grafana 服务 | 需自行搭建 Grafana |
| 预设 Dashboard 模板 | 支持 | 不支持 |
告警 | 告警通知渠道 | 可复用腾讯云可观测平台的告警渠道 | 需自行搭建 |
| 告警通知模板 | 支持 | 不支持 |
其他能力 | 健康巡检 | 支持 | 不支持 |
| 预聚合 | 支持 | 不支持 |
高可用性 | 多副本 | 支持 | 不支持 |
| 水平拓展 | 结合腾讯云自研的分片和调度技术,实现动态扩缩,满足用户的弹性需求,同时支持负载均衡 | 无法水平扩展 |
| 数据存储 | 数据存储能力无上限 | 数据存储受限于本地磁盘大小 |
安全管理 | 数据安全 | 基于腾讯云安全体系,支持鉴权管理 | 不支持 |
成本 | 人力成本 | 一次性配置,免运维 | 前期调研 中期搭建 后期维护 |
| 资源成本 | 按需使用 按量计费 容器核心基础指标免费 | 固定费用 存在资源浪费的可能 |
对比开源 Prometheus 框架:
为了在资源消耗较低的情况下,保留原生 Prometheus 的能力。Prometheus 监控服务做了下列两点采集能力方面的优化:
Prometheus 监控服务仅有 Agent 部署在用户侧。只保留原生的 Prometheus 采集能力,数据不做存储,更省资源。开源 Prometheus 一般会占用几十 GB 的内存,而 Prometheus 监控服务仅占用几百 M 内存即可完成数据抓取。
支持基于腾讯云标签的服务发现能力,可以动态发现部署在云服务器上的监控对象,免去手工配置的琐事。
Prometheus 监控服务有哪些优势?
1. 开箱即用
一键安装监控腾讯云容器及其他云产品,免搭建。
与腾讯云可观测平台告警体系打通,可复用告警通知渠道。
预设常用的 Grafana Dashboard 及告警规则模板。
云服务器标签自动识别,机器扩缩容时无需手动增减配置。
2. 低成本
全托管服务,无需额外采购云资源,节省资源成本。
无需手动搭建,免运维,节约运维人力成本。
按量付费,避免自己搭建时由于资源分配不合理造成的浪费。
容器相关基础指标免费使用,可覆盖日常监控场景。
3. 可扩展性更强
数据存储能力无上限,不受限于本地磁盘。可以结合腾讯云自研的分片和调度技术,实现动态扩缩,满足用户的弹性需求,同时支持负载均衡。解决开源 Prometheus 无法水平扩展的痛点。
4. 高性能
轻量,资源消耗低,Agent 仅占用 1G 以内内存即可完成数据抓取。
5. 更可靠
结合腾讯云云存储服务及自身的副本能力,可用性更强,减少系统中断运行次数。
6. 主动式服务
多种开源没有的增强监控运维能力,如健康巡检、Agent 管理等。
7. 兼容性
Prometheus 监控服务具有100%兼容 Prometheus 开源协议,支持核心 API、自定义多维数据模型、灵活的查询语言 PromQL 和通过动态服务或静态配置发现采集目标。您可以轻松迁移及接入。