1
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?

CloudFormationで管理するRDS更新時の再起動有無の確認方法

Last updated at Posted at 2025-08-20

はじめに

RDSの設定変更で予期しないダウンタイムを防ぐためには、事前に再起動の有無を確認することが重要です。

CloudFormationでRDSを更新する際の再起動の有無については、以下の2つの観点で確認する必要があります:

  1. RDSインスタンスの設定変更で再起動が発生するか?
  2. パラメータグループの設定変更で再起動が発生するか?

本記事では、それぞれの確認方法について詳しく解説します。

RDSインスタンスの設定変更で再起動が発生するか?

CloudFormationで管理している場合、「AWS::RDS::DBInstance」ドキュメントの各プロパティに記載された「Update requires」の値で事前に判断できます。

確認方法

各プロパティのドキュメントに記載されている「Update requires」の値を確認します。

  • No interruption: 中断なしでリソースを更新(再起動なし)
  • Some interruption: 一部中断を伴う更新(場合により短時間の中断・再起動)
  • Replacement: リソースの再作成(長時間のダウンタイム・データ損失リスク)

⚠️ 重要: Replacement の場合、DBインスタンスが完全に再作成されるため、事前にスナップショットを取得しないとデータが失われます。

具体例

# AllocatedStorage プロパティの場合
# Update requires: No interruption → 再起動なし
AllocatedStorage: 100

# DBInstanceClass プロパティの場合
# Update requires: Some interruption → 短時間の中断・再起動あり
DBInstanceClass: db.t3.medium

# DBSubnetGroupName プロパティの場合  
# Update requires: Replacement → リソース再作成
DBSubnetGroupName: my-new-subnet-group

パラメータグループの設定変更で再起動が発生するか?

パラメータグループの設定変更時に再起動が発生するかどうかは、対象パラメータが動的パラメータ静的パラメータかによって決まります。

パラメータの種類

  • 動的パラメータ: 変更後に再起動不要で設定が反映される
  • 静的パラメータ: 変更後にDBインスタンスの再起動が必要

確認方法

パラメータの種類は以下の方法で確認できます。

1. RDSコンソールでの確認

マネジメントコンソールの「パラメータグループ」画面で、各パラメータの「タイプの適用」列を確認します。

image.png

2. AWS CLIでの確認

aws rds describe-db-parameters --db-parameter-group-name <パラメータグループ名>

出力結果の ApplyType フィールドで確認できます。

{
  "ParameterName": "max_connections",
  "ApplyType": "static",  // 静的 = 再起動必要
  ...
}

3. 公式ドキュメントでの確認

各データベースエンジンのパラメータ一覧ドキュメント

CloudFormationでの注意点

CloudFormationでパラメータグループを更新する場合、「AWS::RDS::DBParameterGroup」の Parameters プロパティ自体は Update requires: No interruption となっています。

ただし、これはCloudFormation側の動作を示すもので、実際のRDSインスタンスの再起動有無とは異なります。 CloudFormationのドキュメントでは個別パラメータが動的か静的かは確認できないため、前述の確認方法(CLI、公式ドキュメント、コンソール)で事前に調べる必要があります。

例:

# パラメータグループの更新
Type: AWS::RDS::DBParameterGroup
Properties:
  Parameters:
    # このパラメータが動的か静的かは
    # CloudFormationドキュメントでは判断できない
    "log_min_duration_statement": "1000"
    "shared_buffers": "256MB"

重要: CloudFormationを使用する場合でも、パラメータの動的/静的については別途確認が必要です。

まとめ

CloudFormationでRDSの設定変更を行う前は、必ず以下を確認しましょう:

  1. RDSインスタンス設定: 各プロパティの「Update requires」値で事前確認
  2. パラメータグループ変更: パラメータが動的(Dynamic)か静的(Static)かを事前確認
  3. 事前検証: 可能な限りテスト環境でスタック更新を試行し、影響を記録

これらを確認することで、事前に再起動やダウンタイムの発生を予測でき、本番環境での予期しない障害を防ぐことができます。

1
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
1
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?