重要: AWS での DevOps モニタリングダッシュボードは、2024 年 12 月 3 日に廃止されます。AWS CodePipeline のモニタリングダッシュボードを提供する Datadog の CI Visibility など、AWS パートナーが提供する他の代替手段をご検討いただけます。
概要
このソリューションは、継続的インテグレーション/継続的デリバリー (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 push イベントが生成されます。
ステップ 2
定義済みのイベントパターンに基づいて Amazon EventBridge イベントルールがイベントを検出し、イベントデータを Amazon Kinesis Data Firehose 配信ストリームに送信します。イベントソースごとに 1 つのイベントルールが作成されます。
AWS CodeBuild でのアクティビティについては、Amazon CloudWatch メトリクスストリームが設定され、CloudWatch メトリクスをキャプチャして Kinesis Data Firehose 配信ストリームに配信します。 GitHub の push イベントについては、Amazon API Gateway エンドポイントを作成し、これらのイベントをポストして Kinesis Data Firehose の配信ストリームに配信します。
ステップ 3
アカウント内で canary またはパイプラインについてのアラームをそれぞれ設定した場合、CloudWatch Synthetics canary または Amazon CodePipeline のステータスをモニタリングする CloudWatch アラームからのイベントをキャプチャするために EventBridge イベントルールも作成されます。このアラームは、平均修復時間 (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 Monitoring Dashboard を他の AWS ソリューションと一緒に使用することで、発案からデプロイまでの時間を 30% 短縮することができました。DevOps の運用メトリクスの収集と可視化のセットアッププロセスを自動化することで、よりスマートな意思決定が容易になり、デプロイチーム全体で改善できる箇所をピンポイントで特定できるようになりました」。
関連コンテンツ
このブログ投稿では、AWS DevOps Monitoring Dashboard ソリューションを使用して時間と労力を節約し、セットアッププロセスを自動化して DevOps メトリクスを収集および視覚化する方法をご紹介します。このソリューションは、あらゆる規模の組織がソフトウェア配信プロセスで主要な運用メトリクスを収集、分析、および視覚化することをより容易にするリファレンス実装です。