使用 Amazon Managed Grafana 构建统一的可观测性仪表板
本文介绍整合 CloudWatch / Prometheus / OpenSearch 数据源,构建多数据源可观测性仪表板的方法。
Managed Grafana 的特点
Managed Grafana 将开源(OSS)的 Grafana 作为托管服务提供。Grafana 服务器的预置、扩展、补丁应用和备份均自动管理,因此可以专注于构建仪表板。可以整合 CloudWatch 指标和日志、Prometheus 指标、OpenSearch 日志、X-Ray 跟踪、Timestream 时序数据等 30 个以上的数据源。整合后可以在单一仪表板上进行跨数据源的可视化。与 CloudWatch 的原生仪表板相比,它在多数据源整合、高级可视化以及通过模板变量进行动态筛选方面具有优势。
数据源整合与仪表板设计
只需将 IAM 角色关联到工作区,即可完成 AWS 数据源的设置。CloudWatch 数据源直接查询 EC2、RDS、Lambda 等的指标。Prometheus 数据源则从 Amazon Managed Prometheus 或自建的 Prometheus 服务器获取指标。仪表板通过放置面板(图表、表格、仪表、热力图)来构成。通过模板变量使区域、环境和服务名称可以在下拉列表中切换,用一个仪表板监控多个环境,这样的设计是高效的。Grafana 的仪表板可以以 JSON 格式导出 / 导入,并可以使用 Git 进行版本管理。如果在 CloudWatch 数据源之外还将指标汇集到 Datadog,则在 AWS 账户中创建供 Datadog 使用的 IAM 角色。然后通过 AWS 集成采集 90 个以上 AWS 服务的日志 / 事件 / 大部分指标。Google Cloud 和 Azure 的指标和日志也可以通过各自的集成汇集到同一个 Datadog 中。截至 2026 年 10 月,默认的采集方式是平均每 10 分钟一次的 API 轮询,CloudWatch 中 5 分钟粒度的指标可能会延迟 15 至 20 分钟到达。设置流程记载于 Datadog 的 AWS 集成官方文档中。
告警与访问控制
通过 Grafana 的告警功能,可以基于指标超过阈值或日志的模式匹配来设置告警。可以使用跨多个数据源的条件(例如:CPU 使用率超过 80% 且错误日志每分钟 10 条以上)定义告警,也可以监控仅靠 CloudWatch 告警难以构建的复合条件。通知目标支持 SNS、Slack、PagerDuty、OpsGenie 等众多渠道。访问控制与 IAM Identity Center(原 AWS SSO)集成,根据组织的用户和组来控制仪表板的查看 / 编辑权限。
Managed Grafana 的费用
Managed Grafana 的费用由编辑者用户(仪表板创建者)和查看者用户(浏览者)的许可证构成。编辑者按每个工作区每位活跃用户每月 9.00 美元计费,查看者同样为每月 5.00 美元(截至 2026 年 10 月)。每个工作区至少需要 1 个编辑者许可证,即使没有登录的用户也会计费。与自托管的 Grafana(EC2 + EBS)相比,用户数少时托管服务更便宜,运维负担也更轻。在用户数超过 20 人的环境中,与自托管进行成本比较,并以包含运维成本在内的总拥有成本来判断。
指标 / 日志 / 跟踪的整合
可观测性只有将指标 / 日志 / 跟踪这三个视角结合起来,整体情况才会显现。Managed Grafana 的价值在于,不是用各自独立的工具分别追踪这些数据,而是可以在一个仪表板上将它们并列展示并相互关联。可以不间断地完成这样的调查流程:通过指标察觉异常,在同一时间段的日志中确认详情,再通过跟踪追溯请求在哪里发生了延迟。能够跨多个数据源查看相关性,有助于缩短查明故障原因所需的时间。
仪表板的运维与模板化
仪表板并非创建完就结束,而是运维和完善的东西。Grafana 的仪表板可以导出为 JSON,因此使用 Git 进行版本管理、使变更历史可追溯是安全的。使用模板变量,可以创建一个能够通过下拉列表切换环境和服务的通用仪表板,在同一界面上监控多个目标。如果将常用的面板作为通用组件重复使用,也可以快速搭建新服务的监控。以代码方式进行管理的思路,提高仪表板的一致性和可维护性。
告警与通知的设计
Managed Grafana 告警的优势在于可以构建跨多个数据源的条件。由于不仅可以基于单一指标,还可以基于结合指标和日志的复合条件触发告警,因此可以设计出减少误报的实用告警。由于通知目标支持以 SNS 为首的多种渠道,因此可以将其纳入现有的联络途径。根据重要程度区分通知目标,使只有需要处理的告警才送达负责人。如果附上作为告警依据的仪表板链接,接收者可以立即确认情况,响应也会加快。
与自托管的比较与选择
Grafana 既可以使用托管方式运维,也可以自托管运维。托管版的优点是可以将服务器的构建 / 更新 / 备份交给服务处理,认证也容易与组织的身份平台集成。它适合用户偏少、希望省去运维工作的情况。另一方面,在希望自由添加插件、实施独有的扩展,或因多人使用而希望降低许可证费用等情况下,自托管成为一个选项。以包含运维所需人力在内的总成本进行比较,选择符合自身组织架构和需求的形式,从长期来看是合理的。
总结
Managed Grafana 是用于构建整合多个 AWS 数据源的高级可观测性仪表板的服务。它无需运维 Grafana 服务器,其特点是通过 IAM Identity Center 进行的访问控制以及复合条件的告警设置。当存在 CloudWatch 仪表板无法满足的可视化需求时,它是一个有效的选项。
参考资料(AWS 官方)
本页的第一手信息来源是 AWS 官方网站及官方文档。最新的规格与价格请以下列官方页面为准。
如本页内容与官方文档不一致,请以官方文档为准。