0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Aurora MySQLのバージョンと監査ログのローテーションルールについて

Posted at

結論

ファイルサイズによるローテーション

  • いずれのバージョンも100MBごとにローテーションされる

時間によるローテーション

  • Aurora MySQL 3.03.0: 時間によるローテーションは行われない
  • Aurora MySQL 3.04.0: 1 時間ごとにローテーションされる
  • Aurora MySQL 3.05.2: 1 時間ごとにローテーションされる
  • 他バージョン:未検証

きっかけ

Auroraの監査ログのCW出力費用が高い!!!
CW出力をやめてS3へ出力する方法を検討するために、まずは監査ログの仕様について調査を行った。
公式ドキュメントには以下の通り記載が。

監査ログは、各 Aurora MySQL DB インスタンスのローカルストレージに個別に保存されます。各インスタンスは、一度に 4 つのログファイルに書き込みを分散します。ログファイルの最大サイズは 100 MB です。この設定不可能な制限に達すると、Aurora はファイルを回転し、新しいファイルを生成します。
https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Auditing.html

実機確認したところ、以下の通り1時間ごとにファイルがローテーションされているように見える...。

調査

DBに負荷をかけて監査ログをたくさん出してもらったところ、公式ドキュメント通り100MBでローテーションされている。

DBクラスターパラメータグループなど調査してみたが結局分からず、こちらの状況と調査結果をもとに素直にAWSへ問い合わせした。
その結果AWS側で検証していただき、「監査ログのローテーションのルールは、バージョンにより差異があることが確認できました。」とのこと。

問い合わせの結論としては以下の通り

ファイルサイズによるローテーション

  • いずれのバージョンも100MBごとにローテーションされる

時間によるローテーション

  • バージョンにより差異がある

時間によるローテーションの差分確認を実施したところ以下の通りだった。
※MySQL3.03.0は2024/11/07時点でEOLのため作成できなくなっている

  • Aurora MySQL 3.03.0: 時間によるローテーションは行われない
  • Aurora MySQL 3.04.0: 1 時間ごとにローテーションされる
  • Aurora MySQL 3.05.2: 1 時間ごとにローテーションされる

以上より冒頭の結論へと至る。

今後公式ドキュメントの記載が修正されるのか、ローテーション動作が修正されるのか、どちらの対応を取るのかはAWS次第だが、次回はどちらに転んでもS3へ監査ログを出力できるような仕組みを考える。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?