翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
CloudWatch をデータソースとして手動で追加する
CloudWatch データソースの手動での追加方法
-
Grafana コンソールのサイドメニューで、[設定] (歯車) アイコンにカーソルを合わせてデータソースを選択します。
-
[データソースの追加] を選択します。
-
CloudWatch データソースを選択します。必要に応じて、検索ボックスに
CloudWatch
の入力を開始すると検索を補助することができます。
CloudWatch の設定
次の CloudWatch 設定が適用されます。
名前 |
説明 |
---|---|
|
データソース名。これは、パネルとクエリ内へのデータソースの表示のされ方です。 |
|
新しいパネルで事前に選択されるデータソースを指定します。 |
|
クエリエディタでリージョンを設定します。クエリごとに変更できます。 |
|
カスタムメトリクスの CloudWatch 名前空間を指定します。名前空間が複数ある場合、カンマで区切って指定します。 |
|
認証情報を取得するプロバイダーを指定します。 |
|
引き受けるロールの Amazon リソースネーム (ARN) を指定します。 |
|
(オプション) 外部 ID を指定します。外部 ID で AWS アカウント 作成された別の でロールを引き受ける場合は、 を使用します。 |
|
CloudWatch Logs クエリ専用のタイムアウトを設定します。 |
|
ログに |
認証
Amazon Managed Grafana と CloudWatch 間の認証を有効にする場合、Amazon Managed Grafana コンソールを使用することで必要なポリシーとアクセス許可を素早く作成できます。または、セルフマネージド Grafana サーバーで実行する際と同じ方法の一部を使用して認証を手動で設定することもできます。
Amazon Managed Grafana データソース設定を使用して素早くポリシーを設定する場合、「AWS データソース設定を使用して CloudWatch をデータソースとして追加する」のステップに従います。
アクセス許可を手動で設定する場合、次のセクションに記載のいずれかの方法を使用します。
AWS 認証情報
認証には 3 つの方法があります。
-
AWS SDK デフォルト — ワークスペースにアタッチされているロールで定義されたアクセス許可を使用します。詳細については、「「カスタマー管理」のアクセス許可」を参照してください。
-
アクセスキーとシークレットキー — AWS SDK for Go
StaticProvider
に対応します。指定されたアクセスキー ID とシークレットキーを使用して認証します。この方法にはフォールバックがないため、指定されたキーのペアが機能しない場合は失敗します。
IAM ロール
現在、CloudWatch へのすべてのアクセスは、公式 AWS SDK を使用して Grafana バックエンドによってサーバー側で行われます。AWS SDK デフォルト認証方法を選択し、Grafana サーバーが実行されている場合は AWS、IAM ロールを使用して認証を自動的に処理できます。
詳細については、「IAM ロール」を参照してください。
IAM ポリシー
Grafana が CloudWatch メトリクスや EC2 のタグ、インスタンス、リージョンを読み取るためには、IAM での権限付与が必要です。これらのアクセス許可を IAM ロールに付与し、Grafana の組み込み機能を使用してロールを引き受けることができます。
次のコードは、最小限のポリシーのコードの例です。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowReadingMetricsFromCloudWatch", "Effect": "Allow", "Action": [ "cloudwatch:DescribeAlarmsForMetric", "cloudwatch:DescribeAlarmHistory", "cloudwatch:DescribeAlarms", "cloudwatch:ListMetrics", "cloudwatch:GetMetricStatistics", "cloudwatch:GetMetricData", "cloudwatch:GetInsightRuleReport" ], "Resource": "*" }, { "Sid": "AllowReadingLogsFromCloudWatch", "Effect": "Allow", "Action": [ "logs:DescribeLogGroups", "logs:GetLogGroupFields", "logs:StartQuery", "logs:StopQuery", "logs:GetQueryResults", "logs:GetLogEvents" ], "Resource": "*" }, { "Sid": "AllowReadingTagsInstancesRegionsFromEC2", "Effect": "Allow", "Action": ["ec2:DescribeTags", "ec2:DescribeInstances", "ec2:DescribeRegions"], "Resource": "*" }, { "Sid": "AllowReadingResourcesForTags", "Effect": "Allow", "Action": "tag:GetResources", "Resource": "*" }, { "Sid": "AllowReadingAcrossAccounts", "Effect": "Allow", "Action": [ "oam:ListSinks", "oam:ListAttachedLinks" ], "Resource": "*" } ] }
ロールを割り当てる
引き受ける IAM ロールがある場合、この Assume Role ARN
フィールドに指定します。このフィールドを空白のままにした場合、提供された認証情報が直接使用されます。また、関連するロールまたはユーザーに必要なアクセス許可が必要です。このフィールドが空白でない場合、提供された認証情報を使用して sts:AssumeRole
呼び出しが実行されます。