本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
借助 Amazon Bedrock 代理简化亚马逊 EC2 合规管理 AWS Config
Anand Bukkapatnam Tirumala,Amazon Web Services
摘要
此模式描述了如何将 Amazon Bedrock 与 AWS Config 规则集成,以促进亚马逊弹性计算云 (Amazon EC2) 实例的合规性管理。该方法使用先进的生成式 AI 功能来提供与 Well-Ar chitecte AWS d Framework 一致的量身定制建议,以确保最佳的实例类型选择和系统效率。这种模式的主要特征包括:
自动合规性监控: AWS Config 规则根据所需 EC2 实例类型的预定义标准持续评估实例。
人工智能驱动的建议:Amazon Bedrock 中的生成式人工智能模型分析了基础设施模式。这些模型基于 Well-Architecte AWS d Framework 中概述的最佳实践,为改进提供了明智的建议。
补救:Amazon Bedrock 行动小组支持自动修复步骤,以快速解决不合规的实例,并最大限度地减少潜在的性能或成本效率低下。
可扩展性和适应性:该解决方案旨在随您的基础架构进行扩展,并适应您不断变化的云架构需求。
增强的安全建议:遵守 Well- AWS Architected 原则有助于改善安全状况和系统性能。
你可以使用这种模式作为蓝图,根据需要使用 DevOps 实践,将你自己的基于人工智能的生成式基础设施部署到多个环境中,只需进行最少的更改。
先决条件和限制
先决条件
活跃 AWS 账户的.
一个 AWS Identity and Access Management (IAM) 角色,有权在亚马逊简单存储服务 (Amazon S3) Simple Storage Service 存储桶 AWS Config、 AWS Lambda 函数、Amazon Bedrock、IAM、Amazon L CloudWatch ogs 和亚马逊中创建和管理资源。 EC2
要标记为不合规的 EC2 实例。请勿为此实例使用该
t2.small类型。Amazon Titan 文本嵌入 V2 和 Anthropic Claude 3 Haiku 模型已在你的版本中启用。 AWS 账户要在部署解决方案的 AWS 区域 位置启用模型访问权限,请参阅 Amazon Bedrock 文档中的添加或删除对 Amazon Bedrock 基础模型的访问权限。
Terraform
,已安装和配置。 AWS Command Line Interface (AWS CLI) v2 已在部署环境中安装和配置。
已完成对 Amazon 责任人工智能政策
的审查。
限制
有些 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 标记非投诉资源。此模式部署 AWS Config desired-instance-type规则以找到理想的 EC2 实例大小。
AWS Config 提示用户暂停或修复实例,并对实例采取相应的操作。 EC2 Amazon Bedrock 了解这个退货有效负载。
用户在 Amazon Bedrock 聊天控制台上收到回复。
自动化和扩缩
该解决方案使用Terraform作为基础设施即代码(IaC)工具,可以轻松部署到多个账户, AWS 账户 并作为独立实用程序在多个账户中运行。这种方法简化了管理并提高了部署的一致性。
工具
AWS 服务
AWS Config使您能够评估、审核和评估 AWS 资源配置的合规性和所需设置。
Amazon Bedrock 是一项完全托管的 AI 服务,可通过统一的 API 提供对许多高性能基础模型的访问。
AWS Identity and Access Management (IAM) 通过控制谁经过身份验证并有权使用您的 AWS 资源,从而帮助您安全地管理对这些资源的访问。
AWS Lambda 是一项计算服务,可帮助您运行代码,无需预置或管理服务器。它仅在需要时运行您的代码,并且能自动扩缩,因此您只需为使用的计算时间付费。
其他工具
代码存储库
此模式的代码可在 GitHub sample-awsconfig-bedrock-compliance-manager
最佳实践
遵循最低权限原则,授予执行任务所需的最低权限。有关更多信息,请参阅 IAM 文档中的授予最低权限和安全最佳实践和用例。
定期监控 Lambda 执行日志。有关更多信息,请参阅 Lambda 文档中的监控、调试和疑难解答 Lambda 函数以及使用 AWS Lambda 函数的最佳实践。
操作说明
| Task | 描述 | 所需技能 |
|---|---|---|
克隆存储库。 | 要克隆此模式的存储库,请使用以下命令:
| AWS DevOps、构建主管、 DevOps 工程师、云管理员 |
编辑环境变量。 | 在本地计算机上克隆存储库的根目录中,编辑该 | AWS 系统管理员、AWS DevOps、 DevOps 工程师、AWS 管理员 |
创建基础架构。 |
| AWS DevOps, DevOps 工程师,AWS 系统管理员,云管理员 |
| Task | 描述 | 所需技能 |
|---|---|---|
与经纪人聊天。 | 部署上一步中的解决方案将部署 使用此代理:
| AWS DevOps, DevOps 工程师,AWS 系统管理员,云管理员 |
| Task | 描述 | 所需技能 |
|---|---|---|
删除基础设施和资源。 | 完成此解决方案的工作后,您可以通过运行以下命令来删除由此模式创建的基础架构:
| AWS DevOps, DevOps 工程师,AWS 系统管理员,云管理员 |
故障排除
| 事务 | 解决方案 |
|---|---|
代理行为问题 | 有关故障排除信息,请参阅 Amazon Bedrock 文档中的测试代理行为并对其进行故障排除。 |
AWS Lambda 网络问题 | 有关更多信息,请参阅 Lambda 文档中的 Lambda 中的网络问题疑难解答。 |
IAM 权限 | 有关更多信息,请参阅 IAM 文档中的 IAM 疑难解答。 |
相关资源
使用操作组来定义您的代理要执行的操作(Amazon Bedrock 文档)
desired-instance-type 规则(AWS Config 文档)
AWS Config 工作原理(AWS Config 文档)