AWS CloudWatch Canary创建异常:无法配置S3存储与IAM角色
解决CloudWatch Canary创建时的存储与IAM角色问题
问题1:留空数据存储创建Canary报错
- 原因:CloudWatch Synthetics Canary强制要求指定S3存储桶来存放监控数据、运行日志及脚本文件,不允许留空数据存储配置。
- 解决:
- 若没有现成S3桶,可选择页面上的「创建新S3存储桶」选项(部分AWS区域支持自动创建);
- 若自动创建选项不可见,先手动在同一AWS区域创建一个S3桶,再回到Canary创建页面指定该桶。
问题2:指定S3桶后看不到IAM角色
- 核心原因:你配置的角色信任策略服务主体错误,且权限策略不符合Canary要求
- 解决步骤:
- 修正信任策略:Canary属于CloudWatch Synthetics服务,信任策略的服务主体必须是
cloudwatch-synthetics.amazonaws.com,而非cloudwatch.amazonaws.com。正确的信任策略如下:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "cloudwatch-synthetics.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } - 附加正确的权限策略:给角色附加AWS托管的
CloudWatchSyntheticsFullAccess策略,或者自定义包含以下核心权限的策略:- S3权限:针对指定存储桶的
s3:PutObject、s3:GetObject、s3:ListBucket等 - CloudWatch Logs权限:
logs:CreateLogGroup、logs:CreateLogStream、logs:PutLogEvents - Synthetics服务权限:
synthetics:*(或按需细化)
- S3权限:针对指定存储桶的
- 刷新页面重试:修改角色配置后,刷新Canary创建页面,或退出控制台重新进入,即可在下拉框中看到符合要求的角色。
- 修正信任策略:Canary属于CloudWatch Synthetics服务,信任策略的服务主体必须是
内容的提问来源于stack exchange,提问作者BertC
相关产品推荐
相关产品推荐

