てしりこじり

しりがちいさいエンジニアがいるという

RDS の slowquery.log のダウンロードに失敗する(アクセスできません)ので IAM 設定を見なおした

表題の通り。
AWS Management Console から RDS の slowquery.log をダウンロードしようとしたら失敗した。

前提

AWS の RDS で出力させている slowquery.log を取得できるようにIAM アカウントに権限設定を行っていた。

ちなみに設定していたポリシーは以下。

AllowAccessRDSLogFile

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt1461207776000",
            "Effect": "Allow",
            "Action": [
                "rds:DescribeDBLogFiles",
                "rds:DownloadDBLogFilePortion"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}

なぜだ。
AWS系でよく見るあのブログ会社の記事でも、DescribeDBLogFiles と DownloadDBLogFilePortion を設定してね♡
とかあるんだけどなー

 事象

動作確認してみるとログファイルの表示はできるのだが、ダウンロードに失敗する。。。
リンクは表示されるが取得すると『アクセスできません』と表示されダウンロードに失敗する。

対応

ポリシーに以下を追加したらダウンロードできるようになった。

  • DownloadCompleteDBLogFile

AllowAccessRDSLogFile(修正版)

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Stmt1461207776000",
            "Effect": "Allow",
            "Action": [
                "rds:DescribeDBLogFiles",
                "rds:DownloadDBLogFilePortion",
                "rds:DownloadCompleteDBLogFile"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}

ログファイルがでかすぎるのが問題なのかなー?


Amazon Web Services パターン別構築・運用ガイド

Amazon Web Services パターン別構築・運用ガイド