CloudWatch監視スクリプト(mon-put-instance-data.pl)を使用すると、IAMロール名を指定してAWS認証情報を提供できます(--aws-iam-role = VALUE)。
この目的で(AWSインスタンスでmon-put-instance-data.plを実行するために)IAMロールを作成していますが、このロールにどのアクセス許可/ポリシーを付与する必要がありますか?
ご協力ありがとうございました
CloudWatch監視スクリプト(mon-put-instance-data.pl)を使用すると、IAMロール名を指定してAWS認証情報を提供できます(--aws-iam-role = VALUE)。
この目的で(AWSインスタンスでmon-put-instance-data.plを実行するために)IAMロールを作成していますが、このロールにどのアクセス許可/ポリシーを付与する必要がありますか?
ご協力ありがとうございました
回答:
Linux用のアマゾンCloudWatchの監視スクリプトは 2つのPerlスクリプトで構成、両方の1つのPerlモジュールを使用している-元に短いPEEKが使用されている次のAWS APIアクションを明らかに:
CloudWatchClient.pm
- DescribeTagsmon-get-instance-stats.pl
- GetMetricStatistics、ListMetricsmon-put-instance-data.pl
- PutMetricDataこの情報を使用して、AWSポリシージェネレーターなどを介してIAMポリシーを組み立てることができます。すべてを網羅するポリシーは次のようになります。
{
"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
ます。ただし、実際にコードをテストしたことはありません。
上記のポリシーでは、バージョンを尋ねるエラーが発生します。
以下が機能するはずです。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1426849513000",
"Effect": "Allow",
"Action": [
"cloudwatch:GetMetricStatistics",
"cloudwatch:ListMetrics",
"cloudwatch:PutMetricAlarm",
"cloudwatch:PutMetricData",
"cloudwatch:SetAlarmState"
],
"Resource": [
"*"
]
}
]
}
Amazonが提供するCloudWatchのIAMポリシーがあります。独自に構築する必要はありません。CloudWatchFullAccess
CloudWatchReadOnlyAccess
は、安全な「最初の試行」になりますが、それでも過度に寛大かもしれません。