AI エージェントがアラームを検知し、自律的に根本原因を調査・分析・緩和計画まで立案する仕組みを体験する
AWS DevOps Agent は、CloudWatch アラームや ServiceNow・PagerDuty などのアラートをトリガーとして、AI エージェントがインシデントを自律的に調査し、根本原因の特定から緩和計画の立案までを自動実行するサービスです。従来は人間のエンジニアが手動で実施していた「アラーム受信 → ログ/メトリクス確認 → 原因調査 → 対応策の検討」の一連のプロセスを、エージェントが数分以内に処理します。
中心概念は 「Agent Space(エージェントスペース)」 で、エージェントが操作できる AWS リソース・統合ツール・スキルのスコープを定義します。Agent Space を作成し、IAM ロールで調査対象リソースへのアクセス権を付与するだけで、すぐに自律型インシデント対応を開始できます。
AWS DevOps Agent は 2025 年にリリースされた比較的新しいサービスです。利用可能なリージョンが限定されている場合があります(執筆時点では us-east-1・us-west-2 等が対象。最新の対応リージョンは AWS コンソールで確認してください)。また、調査実行数に応じた従量課金が発生します。ハンズオン前に 料金ページ で最新の価格を確認してください。
| 項目 | 内容 |
|---|---|
| 対象サービス | AWS DevOps Agent、Amazon CloudWatch、AWS Lambda、IAM |
| 主な学習内容 | Agent Space 作成・IAM 設定・手動インシデント調査・トリアージ・根本原因分析・緩和計画確認 |
| 所要時間 | 90〜120 分 |
| 難易度 | ★★★★☆(中級〜上級) |
| 前提知識 | CloudWatch の基本(アラーム・ログ)、Lambda の基本、IAM ロールの概念 |
| 費用目安 | 少額(Lambda・CloudWatch の標準料金 + DevOps Agent 調査実行分。詳細は料金ページ参照) |
| フェーズ | 内容 | 所要時間(目安) |
|---|---|---|
| トリアージ | 新規 or 既存調査へのリンク / スキップ判定(ルックバック 20 分) | 数秒 |
| 調査計画 | 仮説と調査ステップを自動生成 | 〜1 分 |
| データ収集 | CloudWatch メトリクス・ログ・X-Ray トレースを自律的に取得・分析 | 数分 |
| 根本原因特定 | 最も可能性の高い原因と証拠を提示 | 〜数分 |
| 緩和計画 | 具体的な推奨アクションをリスト化 | 〜1 分 |
us-east-1)にアクセスできることAWS DevOps Agent は全リージョンで利用できるわけではありません。AWS マネジメントコンソールで「DevOps Agent」を検索し、コンソールが表示できるリージョンを確認してから作業を開始してください。本手順は us-east-1 を例として記載しています。
DevOps Agent が調査するための「意図的にエラーを発生させるデモ環境」を構築します。
マネジメントコンソールで Lambda → 「関数の作成」→ 以下の設定で作成します。
作成後、コードエディタに以下を貼り付けて「Deploy」します。
import random
import json
import logging
logger = logging.getLogger()
logger.setLevel(logging.INFO)
def lambda_handler(event, context):
# 約 60% の確率でエラーを発生させる
if random.random() < 0.6:
logger.error("ERROR: Simulated application failure - connection timeout to downstream service")
raise Exception("Downstream service unavailable: connection timed out after 30s")
logger.info("Request processed successfully")
return {
'statusCode': 200,
'body': json.dumps('OK')
}
CloudWatch コンソール → 「アラーム」→「アラームの作成」で以下の設定を入力します。
通知(SNS)は任意で設定し、「アラームの作成」をクリックします。
Lambda を一度手動実行(「テスト」タブ)すると、CloudWatch Logs のロググループ /aws/lambda/devops-agent-demo が自動作成されます。DevOps Agent はこのロgsを調査に使用します。
# AWS CLI でテスト実行(ランダムでエラーが発生)
aws lambda invoke \
--function-name devops-agent-demo \
--payload '{}' \
response.json \
--region us-east-1
cat response.json
DevOps Agent がトレースデータも参照できるよう、Lambda の「設定」→「モニタリングおよびオペレーションツール」→「AWS X-Ray トレース」→「有効化」をオンにします。
X-Ray トレースが有効だと、DevOps Agent はリクエスト単位の詳細な実行履歴を調査に使用でき、根本原因の特定精度が向上します。
CloudWatch コンソールで Lambda-ErrorRate-High アラームが表示されていれば準備完了です。次のステップで Agent Space を作成します。
Agent Space はエージェントの「作業スコープ」を定義するワークスペースです。
AWS マネジメントコンソールで「DevOps Agent」を検索し、コンソールを開きます。初回は「エージェントスペースの作成」ボタンが表示されます。
この設定により、調査レポート・根本原因分析・緩和計画がすべて日本語で出力されます。AWS サポートへのエスカレーション時もこの言語設定が使用されます。
「プライマリアカウントアクセスの設定」セクションで 「新しい AWS DevOps エージェントロールを自動作成する」 を選択します(推奨)。
ロールを自動作成するには IAM ロール作成権限(iam:CreateRole・iam:AttachRolePolicy 等)が必要です。権限がない場合は管理者に依頼するか、「ポリシーテンプレートを使用して作成」オプションでカスタムポリシーを適用してください。
「エージェントスペースウェブアプリの有効化」セクションでも同様に 「新しいロールを自動作成」 を選択します。このロールは、オペレーターが Web App にアクセスするための認証に使用されます。
すべて入力したら「作成」をクリックします。数秒〜数十秒で Agent Space が作成されます。
Agent Space の詳細ページが表示され、「オペレーターアクセス」ボタンが有効になっていれば作成成功です。
Agent Space の管理・調査はすべてこの Web App から行います。
Agent Space 詳細ページの 「オペレーターアクセス」 ボタンをクリックします。IAM 認証が行われ、新しいタブで Web App が開きます。
| タブ / 画面 | 内容 |
|---|---|
| 調査(Investigations) | 過去・進行中のインシデント調査一覧 |
| インシデント対応 | 手動トリガーや統合されたアラームの管理 |
| 統合(Integrations) | ServiceNow・PagerDuty・Slack などの外部ツール設定 |
| スキル(Skills) | 調査ロジックのカスタマイズ設定 |
| 設定 | Agent Space の設定・セカンダリアカウントの追加など |
Web App が開き、ダッシュボードが表示されれば OK です。現時点では調査一覧は空の状態です。
DevOps Agent に調査対象を与えるため、Lambda 関数を繰り返し呼び出してエラーを大量発生させます。
以下のスクリプトを実行し、約 2 分間にわたって 20 回呼び出します(約 60% がエラーなので 12 回程度エラーが発生します)。
# Bash(Mac / Linux / CloudShell)
for i in $(seq 1 20); do
aws lambda invoke \
--function-name devops-agent-demo \
--payload '{}' \
/tmp/resp.json \
--region us-east-1 2>&1 | tail -1
sleep 5
done
# PowerShell(Windows)
1..20 | ForEach-Object {
aws lambda invoke `
--function-name devops-agent-demo `
--payload '{}' `
$env:TEMP\resp.json `
--region us-east-1
Start-Sleep -Seconds 5
}
CloudWatch コンソール → 「アラーム」で Lambda-ErrorRate-High が 「アラーム状態(赤)」 に変わるまで待ちます(通常 2〜3 分)。
# CLI でアラーム状態を確認 aws cloudwatch describe-alarms \ --alarm-names Lambda-ErrorRate-High \ --region us-east-1 \ --query 'MetricAlarms[0].StateValue'
Lambda-ErrorRate-High が ALARM 状態になれば、次のステップで手動インシデント調査を開始します。
DevOps Agent Web App から手動でインシデント調査をトリガーします。
Web App の左メニューから 「インシデント対応」 → 「調査の開始」 をクリックします。
事前設定された開始点から 「エラー率の急増」 ボタンをクリックします。説明フィールドに自動でテキストが入力されます。
入力後、「調査を開始する...」 をクリックします。
調査詳細ページに遷移し、エージェントが動作を開始したことが確認できれば成功です。リアルタイムで調査の進行がログ形式で表示されます。
エージェントが自律的に調査を進める様子をリアルタイムで観察し、最終的な結果を読み解きます。
調査が開始されると、まず トリアージ が行われます。DevOps Agent は以下の 3 つの決定のいずれかを行います。
| 決定 | 意味 |
|---|---|
| Continue | 新しい独立した調査として続行(今回はこれになるはず) |
| Linked | 既存の調査に関連付け(類似インシデントが直近にある場合) |
| Skipped | スキル定義のスキップ条件に一致(今回は発生しない) |
トリアージ後、エージェントは調査計画(Investigation Plan)を自動生成します。典型的な計画の例:
Lambda-ErrorRate-High の詳細を取得するdevops-agent-demo のエラーログを分析する調査計画に沿って、エージェントが自律的に AWS API を呼び出してデータを収集・分析します。ログには以下のような内容が表示されます。
/aws/lambda/devops-agent-demo のエラーメッセージを検索調査ページでは、エージェントが「どの AWS API を呼んでいるか」「何を見つけたか」がリアルタイムで表示されます。これにより、エージェントの推論プロセスを追うことができます。
分析が完了すると、根本原因(Root Cause Analysis) レポートが生成されます。今回のデモ環境では以下のような内容が期待されます。
devops-agent-demo でランダムな例外が発生。エラーメッセージ「Downstream service unavailable: connection timed out after 30s」が確認された根本原因に基づいて、エージェントが推奨アクションをリスト化します。
緩和計画はあくまでエージェントの推奨です。実際の対応は担当エンジニアが内容を確認・判断して実施してください。
調査ページの 「人間によるサポートを依頼」 をクリックすると、調査ログ・メトリクス・緩和計画を含む AWS サポートケースを自動作成できます。
チャットベースのサポート統合には Developer 以上のサポートプラン が必要です。Basic プランでもケース作成自体は可能ですが、応答はサポートセンターを別途確認する必要があります。
調査が完了し、根本原因レポートと緩和計画が表示されれば、自律型インシデント対応の一連の流れを体験できました。
実運用では手動トリガーだけでなく、外部ツールとの統合によって調査を自動化できます。
| 統合先 | 動作 | 設定場所 |
|---|---|---|
| ServiceNow | インシデントチケットから自動調査開始、結果を元チケットに書き戻す | Web App → 統合 → ServiceNow |
| PagerDuty | Webhook 経由でアラートから自動調査起動 | Web App → 統合 → Webhook |
| Datadog / Grafana | アラート Webhook から調査トリガー | Web App → 統合 → Webhook |
| Slack | 調査結果・緩和計画をチャンネルに通知 | Web App → 統合 → Slack |
| AWS Support | 調査ログ付きサポートケースを自動作成 | 調査ページ → 人間によるサポートを依頼 |
スキルを使うと、調査ロジックをカスタマイズできます。
マルチアカウント構成では、Agent Space にセカンダリ AWS アカウントを追加できます。各アカウントに IAM ロールを作成し、Agent Space からクロスアカウントで調査できます。
| 従来のインシデント対応 | AWS DevOps Agent 導入後 |
|---|---|
| アラームに気付くまで数分〜数十分 | トリアージが数秒で自動処理される |
| エンジニアが手動でログ/メトリクスを調査 | AI が自律的にデータ収集・分析を実行 |
| 複数アラームが同時発生すると混乱しやすい | 相関分析で重複インシデントを自動統合 |
| 根本原因の特定に時間がかかる | RCA レポートが数分で生成される |
| 対応手順は属人的な知識に依存 | 緩和計画がベストプラクティスに基づいて提案される |
ハンズオン完了後は費用の発生を止めるため、以下の順で削除してください。
使用が終わったら Agent Space を削除してください。
DevOps Agent コンソール → 作成した Agent Space を選択 → 「削除」をクリックします。削除すると調査履歴・統合設定・スキルもすべて削除されます。
Lambda コンソール → devops-agent-demo → 「削除」をクリックします。
CloudWatch コンソール → 「アラーム」→ Lambda-ErrorRate-High を選択 → 「削除」をクリックします。
aws logs delete-log-group \ --log-group-name /aws/lambda/devops-agent-demo \ --region us-east-1
IAM コンソールで、Agent Space 作成時に自動作成されたロール(名前に DevOpsAgent を含む)を削除します。再利用しない場合のみ削除してください。
devops-agent-demo を削除したLambda-ErrorRate-High を削除した/aws/lambda/devops-agent-demo を削除した