使用 CloudWatch 监控脚本 (mon-put-instance-data.pl),可以指定 IAM 角色名称来提供 AWS 凭证 (--aws-iam-role=VALUE)。
我正在为此目的创建一个 IAM 角色(在 AWS 实例上运行 mon-put-instance-data.pl),但我应该赋予该角色哪些权限/策略??
感谢您的帮助
答案1
这适用于 Linux 的 Amazon CloudWatch 监控脚本由两个 Perl 脚本组成,均使用一个 Perl 模块 - 简单查看源代码即可发现正在使用以下 AWS API 操作:
有了这些信息,你就可以组装你的IAM 策略例如通过AWS 策略生成器- 一项包罗万象的政策将是:
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"cloudwatch:GetMetricStatistics",
"cloudwatch:ListMetrics",
"cloudwatch:PutMetricData",
"ec2:DescribeTags"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
当然,您可以cloudwatch:GetMetricStatistics
cloudwatch:ListMetrics
在使用时删除mon-put-instance-data.pl
- 请注意,我实际上还没有测试过代码。
答案2
上述策略给出询问版本的错误。
以下应该有效:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1426849513000",
"Effect": "Allow",
"Action": [
"cloudwatch:GetMetricStatistics",
"cloudwatch:ListMetrics",
"cloudwatch:PutMetricAlarm",
"cloudwatch:PutMetricData",
"cloudwatch:SetAlarmState"
],
"Resource": [
"*"
]
}
]
}
答案3
Amazon 为 CloudWatch 提供了 IAM 策略。无需自行构建。CloudWatchFullAccess