カスタムパラメータグループを使用するRDSの起動処理

記事タイトルとURLをコピーする

はじめに

初めまして。CI部 平野です。

今回はとある案件にて利用しているRDSインスタンスについて、起動後に意図しない再起動処理が行われていたことに関してお話させていただきます。 この2回目の再起動によって可用性の監視に引っかかってしまい、調査と対処が必要となっていました。

先に結論を記載しますと、カスタムパラメータグループが原因のようでした。

背景

該当のRDSインスタンスは毎日定時にバッチサーバーからの処理によって起動と停止処理を実行しています。そのため、RDSインスタンスが停止している時間は非監視設定を入れていました。

ところが、起動処理が完了しているはずの時間でRDSの可用性イベントを検知してしまいました。 当初何らかの理由で起動処理が長引いたのではと推測しましたが、イベントログを確認したところ、バッチサーバーからの起動処理が完了した後に再起動イベントが発生していることが判明しました。

 3:04:47 AM UTC DB instance restarted
 3:05:26 AM UTC DB instance started
 3:07:07 AM UTC DB instance shutdown
 3:08:21 AM UTC DB instance restarted

何があったのか

調べてみたところ現時点の挙動として、カスタムパラメータグループを使用しているRDSインスタンスは、停止状態から起動する際、起動完了後に再起動が実行されることが分かりました。

デフォルトのパラメータグループを使用しているインスタンスは起動後の再起動が無いため、再起動はカスタムパラメータグループの反映によるものではないかと考えています。(再起動の理由はあくまで推測のため、詳しい方がいればコメントいただけると嬉しいです)

つまり、本RDSインスタンスが起動後に再起動していた原因はカスタムパラメータグループを使用していたためでした。 また、バッチ処理による起動停止処理は以前から行っていましたが、今回アラートが発砲されてしまったのは2回目の再起動イベントがいつもより遅れて実行されたため、設定していた非監視時間を越えてしまったことが原因でした。

最後に

再起動はカスタムパラメータグループを使用するRDSインスタンスの挙動と確認できましたので、非監視時間を延長することで本事象によるアラートの発砲を抑止しました。

デフォルトのパラメータグループではパラメータ値を変更することができないためカスタムパラメータグループを使用している方も多いと思います。

本記事がどなたかの参考になれば幸いです。