2023.06.12  

【Aurora MySQL】メモリ消費が増え続けてDBが再起動する

AWS    

AWS AuroraMySQL 3.01.0(Mysql8.0.23) で、DBにリクエストを投げ続けると以下のようにメモリが解放されず、DBが再起動する事象が発生しました。

オレンジの線はライターインスタンス。
緑の線はリーダーインスタンスとなります。

オレンジの線の線が降下している時間 = 300TPSでAPIを実行(DBにinsertを実行)となります。
APIの実行を止めるとオレンジ線は横這いとなり、メモリが解放されません。

inodb_buffer_poolが悪さをしているのかと思いましたが、DB再起動後にinodb_buffer_poolを確認すると使用量がほぼMAXとなっています。

inodb_buffer_pool_sizeがinodb_buffer_poolの上限値。(単位はバイト)
inodb_buffer_pool_bytes_dataがinodb_buffer_poolの現在の利用量。(単位はバイト)

SHOW GLOBAL STATUS LIKE 'InnoDB\_buffer\_pool%';

SHOW GLOBAL VARIABLES LIKE 'innodb_buffer_pool_%';

aurora_oom_responseパラメータをtuneに設定しても改善せず(参考)

色々調べても原因が分からず困りました。

解決方法

AuroraMySQL 3.01.0(Mysql8.0.23) から AuroraMySQL 3.03.1(Mysql8.0.26)にバージョンアップしたところメモリが減らなくなりました。

下記グラフの3:00から300TPSでAPIを実行し続けていますが、メモリが減らずに安定しています。
※ 空きメモリが上昇している箇所は、AuroraMySQLをバージョンアップしたタイミング

コメント
現在コメントはありません。
コメントする
コメント入力

名前 (※ 必須)

メールアドレス (※ 必須 画面には表示されません)

送信