Amazon Relational Database Service (Amazon RDS) for SQL Server インスタンスで、マイナーバージョンの自動アップグレードを有効にしています。インスタンスが最新のマイナーバージョンに自動的にアップグレードされないのはなぜですか?
解決方法
Amazon RDS は、メンテナンスウィンドウ中に、インスタンスのマイナーバージョンを自動的にアップグレードします。これは、新しいマイナーバージョンが優先マイナーバージョンとして設定されている場合に実行されます。ただし、優先バージョンとして設定されていない新バージョンがリリースされた場合には、Amazon RDS for SQL Server のアップグレードは行われません。
Amazon RDS は、新しくリリースされたすべてのマイナーエンジンバージョンを、優先バージョンとして自動的に設定するわけではありません。Amazon RDS が新しいマイナーバージョンを優先マイナーバージョンとして指定する際には、以下の基準が考慮されます。
- セキュリティ上の既知の問題。
- 対象の Amazon RDS バージョンでのバグ。
- 対象のマイナーバージョンがリリースされて以降のフリート全体の安定性。
新しいマイナーバージョンに重大なバグ修正が含まれている場合、Amazon RDS は、マイナーバージョン自動アップグレードオプションが有効化された DB インスタンスに対し、アップグレードをスケジュールします。このアップグレードは、対象の DB インスタンスで設定されたメンテナンスウィンドウ中に実行されます。
新しくリリースされたバージョンが優先マイナーバージョンとして設定されているかを確認するには、次の AWS コマンドラインインターフェイス (AWS CLI) コマンドを実行します。このコマンド例にある engine、engine-version、およびregion は、実際の RDS for SQL Server インスタンスの構成に合わせて変更します。
aws rds describe-db-engine-versions --engine sqlserver-se --engine-version 15.00.4073.23.v1 --region ap-southeast-2 --query "DBEngineVersions[*].ValidUpgradeTarget[*].{AutoUpgrade:AutoUpgrade,EngineVersion:EngineVersion}" --output table --color off
注: AWS CLI コマンドの実行時にエラーが発生した場合は、AWS CLI の最新バージョンを使用していることを確認してください。
以下は、このコマンドの出力例です。この出力からは、AutoUpgrade 列が False に設定されていることが確認できます。つまり、バージョン 15.00.4073.23.v1 のインスタンスは、バージョン 15.00.4153.1.v1 および 15.00.4198.2.v1 での自動アップグレードの対象にはなりません。これは、新しくリリースされたどのバージョンも、優先バージョンとして設定されていないためです。RDS for SQL Server インスタンスで、新しいマイナーバージョンへの自動的アップグレードは実行されません。
-------------------------------------
| DescribeDBEngineVersions |
+--------------+--------------------+
| AutoUpgrade | EngineVersion |
+--------------+--------------------+
| False | 15.00.4153.1.v1 |
| False | 15.00.4198.2.v1 |
+--------------+--------------------+