跨账户调查
跨账户 CloudWatch 调查功能使您能够从一个集中式监控账户,调查跨多个 AWS 账户 的应用程序问题。该功能支持您在监控账户的基础上,关联多达 25 个其他账户的遥测数据、指标和日志,从而全面掌握分布式应用运行状态,并高效排查跨多账户的复杂问题场景。
先决条件
设置监控账户,以进行跨账户访问
设置监控账户,以进行跨账户访问
通过 https://console.aws.amazon.com/cloudwatch/
打开 CloudWatch 控制台。 -
在左侧导航窗格中,选择 AI 操作、配置。
-
在配置跨账户访问下,选择配置。
-
在源账户列表部分下,添加最多 25 个账户的账户 ID。
-
更新 IAM 角色。
-
自动
-
若选择自动更新助手角色(推荐),系统会创建一个名为
AIOpsAssistantCrossAccountPolicy-${guid}
的客户管理型策略,其中包含承担指定源账户中助手角色所需的sts:AssumeRole
声明。选择自动更新选项时,源账户中的 IAM 角色名称默认为AIOps-CrossAccountInvestigationRole
。 -
若监控账户所有者从跨账户配置中移除某个源账户,系统不会自动更新关联的 IAM 策略。您必须手动更新 IAM 角色和策略,确保其始终遵循最小权限原则。
-
若在移除源账户后未手动更新权限,可能会导致该角色达到托管策略数量上限。您必须删除调查角色相关的全部未使用托管策略。
-
-
手动方式
-
以下示例显示了助手角色所需的信任策略:
您可以使用 AWS CLI 创建自定义源账户角色,然后使用以下命令将
AIOpsAssistantPolicy
附加到该角色,并将占位符值替换为您环境的相应值:aws iam create-role --role-name
custom-role-name
--assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "investigation-group-role-arn
" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "investigation-group-arn
" } } } ] }' aws iam attach-role-policy --role-namecustom-role-name
--policy-arn arn:aws:iam::aws:policy/AIOpsAssistantPolicy -
要实现跨账户访问,监控账户中的助手角色权限策略必须包含以下内容。若您手动配置监控账户,角色名称可按需自定义。它不默认为
AIOps-CrossAccountInvestigationRole
,请务必为每个源帐户指定助手角色的名称。 -
在 AWS CLI 中,通过以下命令使用自定义源账户角色 ARN 更新监控账户调查组,并将占位符值替换为您环境的相应值:
aws aiops update-investigation-group --identifier
investigation-group-id
--cross-account-configurations sourceRoleArn=sourceRoleArn1
sourceRoleArn=sourceRoleArn2
有关此命令的更多详细信息,请参阅《AWS CLI Command Reference》。
-
-
设置源账户,以进行跨账户访问
-
若您选择了自动更新助手角色选项来配置监控账户,则需预置一个名为
AIOps-CrossAccountInvestigationRole
的 IAM 角色。若您选择手动设置选项,则需按自定义的源账户角色名称来配置 IAM 角色。-
在 IAM 控制台中,将 AWS 托管策略
AIOpsAssistantPolicy
附加到您的 IAM 角色。 -
源账户中该角色的信任策略需包含如下配置,必须在策略中明确指定
ExternalID
。请使用监控账户中调查组的 ARN。
-
-
必须在每个源账户中分别完成此操作。
-
若您通过控制台配置监控账户角色,则源账户中的角色名称将默认设置为
AIOps-CrossAccountInvestionRole
。 -
通过以下步骤确认访问权限:登录监控账户,导航至调查组,然后进入配置,再选择跨账户设置。
确认源账户已在跨账户配置列表中显示,且其状态为已关联至监控账户。
跨账户问题调查
在设置 CloudWatch 跨账户可观测性控制面板后,即可在监控账户中查看并分析跨账户遥测数据。必须从源账户添加跨账户遥测数据,才能对该源账户开展调查分析。
要详细了解如何创建调查,请参阅 调查您环境中的操作问题。