重要提示:AWS 上的 DevOps 监控控制面板将于 2024 年 12 月 3 日停用。您可以探索 AWS 合作伙伴提供的其他替代方案,例如 Datadog 的 CI Visibility,它为 AWS CodePipeline 提供监控仪表板。
概述
此解决方案可自动执行持续集成/持续交付(CI/CD)指标的摄取、分析和可视化过程。这些指标在 Amazon QuickSight 控制面板中显示以帮助 DevOps 领导者评估其 DevOps 计划的影响,并在其拓展团队中进行数据驱动型决策以驱动的持续改进。
优势
流数据的自动摄取和分析在您的 CI/CD 管道中近乎实时地包含性能和操作指标。计算关键 DevOps 指标以跟踪和评估您的开发团队的活动。
自动启动预构建的 Amazon QuickSight 控制面板,可视化解决方案分析。在您的 CI/CD 活动中确定见解,以更好地了解您的 DevOps 计划并在您的软件交付过程中进行数据驱动型决策以驱动持续改进。
您可以自定义该解决方案以使用第三方商业智能 (BI) 工具,由此您可以从 Amazon Athena 数据库构建自定义可视化。
将来自多个 AWS 账户和 AWS 区域的数据流式传输到 Amazon Simple Storage Service(Amazon S3)存储桶,在该存储桶中使用单个控制面板分析和监控数据。
技术详情
您可以使用实施指南自动部署此架构。
第 1 步
开发人员在 AWS CI/CD 管道中启动活动,例如推送代码更改到 AWS CodeCommit 或是使用 AWS CodeDeploy 部署应用程序。这些活动将创建事件。如果激活了多账户多区域功能,则可以从多个 AWS 账户和多个 AWS 区域生成事件。对于使用 GitHub 存储库进行的开发,将生成 git 推送事件。
第 2 步
Amazon EventBridge 事件规则基于预定义事件模式进行事件检测,然后发送事件数据到 Amazon Kinesis Data Firehose 交付流。每个事件源将创建一个事件规则。
对于 AWS CodeBuild 中的活动,设置一个 Amazon CloudWatch 指标流,以捕获 CloudWatch 指标并将其传输到 Kinesis Data Firehose 传输流。 对于 GitHub 推送事件,创建一个 Amazon API Gateway 端点来发布这些事件,并将其传输给 Kinesis Data Firehose 传输流。
第 3 步
如果您在账户中分别为 Canary 或管道设置了警报,则还会创建一个 EventBridge 事件规则以从监控 CloudWatch Synthetics Canary 或 Amazon CodePipeline 状态的 CloudWatch 警报中捕获事件。计算平均恢复时间(MTTR)指标时需要该警报来收集数据。
第 4 步
Kinesis Data Firehose 使用 AWS Lambda 函数进行数据转换。Lambda 函数将相关数据提取到每个指标,并将其发送到监控账户中的 Amazon Simple Storage Service(Amazon S3)存储桶以进行下游处理。
第 5 步
Amazon Simple Storage Service(Amazon S3)中的数据与 Amazon Athena 数据库关联,数据库对该数据运行查询并将查询结果返回至 Amazon QuickSight。
第 6 步
QuickSight 获取查询结果并为您的管理团队构建控制面板可视化。
“Mphasis 是领先的应用技术服务公司,帮助企业加快数字化转型之旅。通过使用 DevOps 监控控制面板和其他 AWS 解决方案,我们能够将构思和部署之间的时间缩短 30%。我们能够自动执行收集和可视化 DevOps 运营指标的设置过程,这使我们能够轻松做出更明智的决定,并确定部署团队可以在哪些地方进行改进。”
相关内容
在本博文中,我们向您展示如何使用 AWS DevOps 监控控制面板解决方案自动完成设置流程以收集和可视化 DevOps 指标,从而节省时间和精力。此解决方案是让所有规模的组织更轻松地收集、分析和可神化其软件交付流程中的关键操作指标的参考实施。