翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon Bedrock エージェントと を使用して Amazon EC2 コンプライアンス管理を合理化する AWS Config
Anand Bukkapatnam Tirumala (Amazon Web Services)
概要
このパターンでは、Amazon Bedrock を AWS Config ルールと統合して、Amazon Elastic Compute Cloud (Amazon EC2) インスタンスのコンプライアンス管理を容易にする方法について説明します。このアプローチでは、高度な生成 AI 機能を使用して、AWS Well-Architected フレームワークに沿った、カスタマイズされた推奨事項を提供することで、インスタンスタイプの選択とシステム効率を最適化できるようにします。このパターンの主な特徴は以下のとおりです。
自動コンプライアンスモニタリング: AWS Config ルールは、必要なインスタンスタイプの事前定義された基準に照らして EC2 インスタンスを継続的に評価します。
AI 主導の推奨事項: Amazon Bedrock の生成 AI モデルはインフラストラクチャパターンを分析します。これらのモデルは、 AWS Well-Architected フレームワークで概説されているベストプラクティスに基づいて、改善のためのインテリジェントな提案を提供します。
修復: Amazon Bedrock アクショングループを使用すると、非準拠インスタンスに迅速に対処し、パフォーマンスやコストの潜在的な非効率性を最小限に抑える自動修復手順が可能になります。
スケーラビリティと適応性: このソリューションは、インフラストラクチャに合わせてスケールし、クラウドアーキテクチャのニーズの変化に適応するように設計されています。
セキュリティに関する推奨事項の強化: AWS Well-Architected の原則への準拠は、セキュリティ体制とシステムパフォーマンスの向上に役立ちます。
このパターンをブループリントとして使用し、必要に応じて DevOps プラクティスを使用することで、独自の生成 AI ベースのインフラストラクチャを最小限の変更で複数の環境にデプロイできます。
前提条件と制限
前提条件
アクティブ AWS アカウント。
Amazon Simple Storage Service AWS Identity and Access Management (Amazon S3) バケット、 AWS Lambda 関数、Amazon Bedrock AWS Config、IAM、Amazon CloudWatch Logs、および Amazon EC2 でリソースを作成および管理するためのアクセス許可を持つ (IAM) ロール。
非準拠としてフラグ付けする EC2 インスタンス。このインスタンスには
t2.smallタイプを使用しないでください。で有効になっている Amazon Titan Text Embeddings V2 および Anthropic Claude 3 Haiku モデル AWS アカウント。ソリューションをデプロイ AWS リージョン する のモデルアクセスを有効にするには、Amazon Bedrock ドキュメントの「Amazon Bedrock 基盤モデルへのアクセスを追加または削除する」を参照してください。
インストールされ、設定されている Terraform
。 デプロイ環境にインストールされ、設定されている AWS Command Line Interface (AWS CLI) v2。
Amazon Responsible AI ポリシー
のレビューが完了していること。
制限事項
一部の AWS のサービス は では使用できません AWS リージョン。利用可能なリージョンについては、「AWS のサービス (リージョン別)
」を参照してください。特定のエンドポイントについては、「サービスエンドポイントとクォータ」を参照して、サービスのリンクを選択してください。 このソリューションは、Amazon Titan Text Embeddings V2 および Claude 3 Haiku モデルを使用してテストされました。他のモデルを使用する場合は、Terraform コードをカスタマイズできます。このコードは、簡単に変更できるようにパラメータ化されています。
このソリューションにはチャット履歴機能がないため、チャットは保存されません。
アーキテクチャ
次の図表は、このパターンのアプリケーションのワークフローとアーキテクチャコンポーネントを示しています。

ワークフローは以下のステップで構成されます。
ユーザーは、Amazon Bedrock チャットコンソールを介してモデルと対話します。ユーザーは次のような質問をします。
What can you help me with?List non-complaint resourcesSuggest security best practices
モデルが事前トレーニング済みの場合は、既存の知識から直接プロンプトに応答します。そうでない場合、プロンプトは Amazon Bedrock アクショングループに移動します。
アクショングループは、安全なサービス通信のために AWS PrivateLink
を使用して VPC エンドポイントに到達します。 リクエストは、Amazon Bedrock サービスの VPC エンドポイントを経由して Lambda 関数に到達します。
Lambda 関数は、プライマリ実行エンジンです。この関数は、リクエストに基づいて API を呼び出し、 AWS のサービスに対してアクションを実行します。また、オペレーションのルーティングと実行も処理します。
Lambda 関数は AWS Config を呼び出して、非苦情リソース (前提条件として作成した非準拠の EC2 インスタンス) を決定します。
AWS Config は、苦情以外のリソースにフラグを付けます。このパターンは、理想的な EC2 AWS Config desired-instance-typeルールをデプロイします。
AWS Config は、インスタンスを一時停止または修復するようにユーザーに促し、EC2 インスタンスに対してそれに応じてアクションを実行します。Amazon Bedrock は、この戻りペイロードを認識します。
ユーザーは、Amazon Bedrock チャットコンソールでレスポンスを受け取ります。
自動化とスケール
このソリューションでは、Terraform をコードとしてのインフラストラクチャ (IaC) ツールとして使用して、 へのデプロイ AWS アカウント と、複数のアカウントにわたるスタンドアロンユーティリティとして機能します。このアプローチにより、管理が簡単になり、デプロイの一貫性が向上します。
ツール
AWS のサービス
AWS Config では、コンプライアンスと必要な設定について、 AWS リソースの設定を評価、監査、評価できます。
Amazon Bedrock は、統合 API を通じて多くの高性能基盤モデルへのアクセスを提供するフルマネージド型の AI サービスです。
AWS Identity and Access Management (IAM) は、AWS リソースの使用を認証および認可されたユーザーを制御することで、AWS リソースへのアクセスを安全に管理するのに役立ちます。
AWS Lambda は、サーバーのプロビジョニングや管理を行うことなくコードを実行できるコンピューティングサービスです。必要に応じてコードを実行し、自動的にスケーリングするため、課金は実際に使用したコンピューティング時間に対してのみ発生します。
その他のツール
コードリポジトリ
このパターンのコードは、GitHub 内の sample-awsconfig-bedrock-compliance-manager
ベストプラクティス
最小特権の原則に従い、タスク実行に必要最小限の権限を付与します。詳細については、IAM ドキュメントの「最小特権の付与」と「セキュリティのベストプラクティスとユースケース」を参照してください。
Lambda 実行ログを定期的にモニタリングします。詳細については、Lambda ドキュメントの「Lambda 関数のモニタリング、デバッグ、トラブルシューティング」およびAWS Lambda 「関数を操作するためのベストプラクティス」を参照してください。
エピック
| タスク | 説明 | 必要なスキル |
|---|---|---|
リポジトリのクローン作成 | このパターンの GitHub リポジトリをクローンするには、以下のコマンドを使用します。
| AWS DevOps、ビルドリード、DevOps エンジニア、クラウド管理者 |
環境変数を編集します。 | ローカルマシンのクローンされたリポジトリのルートディレクトリで、 | AWS システム管理者、AWS DevOps、DevOps エンジニア、AWS 管理者 |
インフラストラクチャを作成します。 |
| AWS DevOps、DevOps エンジニア、AWS システム管理者、クラウド管理者 |
| タスク | 説明 | 必要なスキル |
|---|---|---|
エージェントとチャットします。 | 前のステップでソリューションをデプロイすると、 エージェントを使用するには:
| AWS DevOps、DevOps エンジニア、AWS システム管理者、クラウド管理者 |
| タスク | 説明 | 必要なスキル |
|---|---|---|
インフラストラクチャとリソースを削除します。 | このソリューションでの作業が完了したら、以下のコマンドを実行することで、このパターンによって作成されたインフラストラクチャを削除できます。
| AWS DevOps、DevOps エンジニア、AWS システム管理者、クラウド管理者 |
トラブルシューティング
| 問題 | ソリューション |
|---|---|
エージェントの動作の問題 | トラブルシューティング情報については、Amazon Bedrock ドキュメントの「エージェントの動作のテストとトラブルシューティング」を参照してください。 |
AWS Lambda ネットワークの問題 | 詳細については、Lambda ドキュメントの「Lambda でのネットワークの問題のトラブルシューティング」を参照してください。 |
IAM アクセス許可 | 詳細については、IAM ドキュメントの「IAM のトラブルシューティング」を参照してください。 |
関連リソース
アクショングループを使用して、エージェントが実行するアクションを定義する (Amazon Bedrock ドキュメント)
desired-instance-type ルール (AWS Config ドキュメント)
AWS Config の仕組み (AWS Config ドキュメント)