企业使用自建开源 Prometheus + Thanos 方案通常面临以下主要问题:
- 部署运维成本高:在多 VPC、多容器集群、多云、多 IDC 环境中,都需要自购 ECS 部署 Prometheus、Grafana 和 AlertManager,导致部署和运维成本居高不下。
- 组件接入工作量大:业务系统使用的各种组件需要自行安装 Exporter、配置大盘和告警规则,且开源 Grafana 大盘和告警规则通常不够专业,缺少结合组件原理和最佳实践的深入优化。
- 性能扩展受限:对于容器集群或 ECS 规模较大的场景,自建开源 Prometheus 单节点架构无法承载大流量的指标处理,采集和查询性能低、数据容量小、保存周期短。
- Thanos 复杂度高:引入 Thanos 进行集中、长周期存储后,增加了整个指标可观察体系的复杂性。非 Kubernetes 场景需要 Thanos Receiver 支持,整个 Thanos 部署和运维较复杂。
- 全局聚合查询困难:通过 Thanos 实现物理聚合,灵活性低,跨集群跨环境的统一查询和告警难以实现。