Performance Insights機能を有効化しても分析対象インスタンスに選択できない

2021.01.06

いわさです。

Amazon RDSにてパフォーマンスインサイトを有効化したのですが、閲覧出来ませんでした。
IAMポリシーの設定が必要でしたので、設定内容を記しておきます。

Performance Insights

パフォーマンスインサイトはAmazon RDSのパフォーマンスを分析することが出来る、RDSの機能です。

パフォーマンスインサイトを有効化するとどこがデータベースアクセス上のボトルネックになっているのかを可視化することが出来ます。

権限が必要

パフォーマンスインサイト機能を有効化したのですが閲覧が出来ませんでした。

パフォーマンスインサイト機能の有効化にあわせて、参照するためには権限の設定が必要です。

上記に従って権限を付与すると参照できるようになります。

最小権限

上記の手順の場合だと、AmazonRDSFullAccess管理ポリシーを付与するか、カスタムIAMポリシーを作成のうえAmazonRDSReadOnlyAccessも付与するかが必要になりますが、もうちょっと絞れないのかなと思ったので権限を削ってみました。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "rds:DescribeDBInstances",
                "pi:*"
            ],
            "Resource": [
                "arn:aws:pi:*:*:metrics/rds/*",
                "arn:aws:rds:*:*:db:*"
            ]
        }
    ]
}

上記でパフォーマンスインサイトが閲覧できるようになりました。
適宜リージョン、アカウント、DBインスタンス識別子もリソース条件に加えても良いと思います。

もちろん、RDSの再起動・変更・削除なども出来ません。

まとめ

パフォーマンスインサイト機能の有効化しただけで終わらないよう気をつけましょう。
Administrator系の権限を使って構築しているとつい忘れてしまいそうです。