Amazon Aurora PostgreSQL DB クラスターのアップグレード
Amazon Aurora では、広範なテストの後にのみ AWS リージョン で PostgreSQL データベースエンジンの新しいバージョンが利用可能となります。Aurora PostgreSQL DB クラスターは、リージョンで利用可能になった時点で新しいバージョンにアップグレードできます。
DB クラスターが現在実行されている Aurora PostgreSQL のバージョンに応じて、新しいリリースへのアップグレードは、マイナーアップグレードまたはメジャーアップグレードのいずれかになります。例えば、Aurora PostgreSQL 11.15 DB クラスターを Aurora PostgreSQL 13.6 にアップグレードした場合は、メジャーバージョンアップグレードです。Aurora PostgreSQL 13.3 DB クラスターを Aurora PostgreSQL 13.7 にアップグレードした場合は、マイナーバージョンアップグレードです。次のトピックでは、両方のタイプのアップグレードを実行する方法について説明します。
目次
Aurora PostgreSQL のアップグレードプロセスの概要
メジャーバージョンとマイナーバージョンのアップグレードの違いは、次のとおりです。
- マイナーバージョンのアップグレードとパッチ
-
マイナーバージョンアップグレードおよびパッチには、既存のアプリケーションとの下位互換性がある変更のみが含まれます。マイナーバージョンのアップグレードとパッチは、Aurora PostgreSQL がテストして承認した後にのみ利用可能になります。
マイナーバージョンのアップグレードは、Aurora によって自動的に適用できます。新しい Aurora PostgreSQL DB クラスターを作成すると、[マイナーバージョンアップグレードの有効化] オプションが事前に選択されています。このオプションをオフにしない限り、スケジュールされたメンテナンス期間中には、マイナーバージョンのアップグレードが自動的に適用されます。自動マイナーバージョンアップグレード (AMVU) オプションと Aurora DB クラスターを使用できるように変更する方法については、「 Aurora DB クラスターのマイナーバージョン自動アップグレード」を参照してください。
自動マイナーバージョンアップグレードオプションが Aurora PostgreSQL DB クラスターに設定されていない場合、Aurora PostgreSQL は新しいマイナーバージョンに自動的にアップグレードされません。代わりに、AWS リージョン で新しいマイナーバージョンがリリースされ、Aurora PostgreSQL DB クラスターが古いマイナーバージョンを実行している場合、Aurora はアップグレードを要求します。そのためには、クラスターのメンテナンスタスクにレコメンデーションを追加します。
パッチはアップグレードとはみなされず、自動的には適用されません。Aurora PostgreSQL では、Aurora PostgreSQL DB クラスターのメンテナンスタスクに推奨事項を追加して、パッチを適用するように求められます。詳細については、「マイナーバージョンのアップグレードとパッチの適用方法」を参照してください。
注記
セキュリティやその他の重要な問題を解決するパッチも、メンテナンスタスクとして追加されます。ただし、これらのパッチは必須です。保留中のメンテナンスタスクでセキュリティパッチが使用可能になったら、Aurora PostgreSQL DB クラスターにセキュリティパッチを適用してください。
アップグレードプロセスでは、クラスター内の各インスタンスが新しいバージョンにアップグレードされる際に、短時間停止する可能性があります。ただし、Aurora PostgreSQL バージョン 14.3.3、13.7.3、12.11.3、11.16.3、10.21.3、およびこれらのマイナーバージョンやより新しいメジャーバージョンのその他のリリース以降では、アップグレードプロセスではゼロダウンタイムパッチ適用 (ZDP) 機能が使用されます。この機能は停止を最小限に抑え、ほとんどの場合は完全に排除します。詳細については、「マイナーリリースのアップグレードとダウンタイムなしのパッチ適用プロセス」を参照してください。
注記
ZDP は、次の場合サポートされていません。
Aurora PostgreSQL DB クラスターが Aurora Serverless v1 に設定されている場合。
Aurora PostgreSQL DB クラスターがセカンダリ AWS リージョン の Aurora グローバルデータベースとして設定されている場合。
Aurora グローバルデータベースのリーダーインスタンスのアップグレード中。
OS パッチおよび OS アップグレード中。
ZDP は Aurora Serverless v2 として設定されている Aurora PostgreSQL DB クラスターでサポートされています。
- メジャーバージョンのアップグレード
-
マイナーバージョンのアップグレードやパッチとは異なり、Aurora PostgreSQL には自動メジャーバージョンアップグレードオプションはありません。新しいメジャー PostgreSQL バージョンのアップグレードには、既存のアプリケーションとの下位互換性のないデータベースの変更が含まれる場合があります。新しい機能により、既存のアプリケーションが適切に動作しなくなることがあります。
Aurora PostgreSQL DB クラスター内の DB インスタンスをアップグレードする前に、問題を予防するため、「本番稼働用の DB クラスターの新しいメジャーバージョンへのアップグレードをテストする」で説明している手順に従うことを強くお勧めします。まず、以下の手順に従って、アプリケーションを新しいバージョンで実行できることを確認します。その後、Aurora PostgreSQL DB クラスターを新しいバージョンに手動でアップグレードできます。
アップグレードプロセスでは、クラスター内のすべてのインスタンスが新しいバージョンにアップグレードされる際に、短時間停止する可能性があります。事前計画プロセスにも時間がかかります。アップグレードタスクは、必ずクラスターのメンテナンス期間中、または運用が最小限のタイミングで実行することをお勧めします。詳細については、「メジャーバージョンアップグレードの実行」を参照してください。
注記
マイナーバージョンのアップグレードとメジャーバージョンのアップグレードの両方で、短期間の停止を伴う可能性があります。そのため、メンテナンス期間中、または使用率の低い時間帯にアップグレードを実行またはスケジュールすることを強くお勧めします。
Aurora PostgreSQL DB クラスターでは、オペレーティングシステムの更新が必要になる場合があります。これらのアップデートには glibc ライブラリの新しいバージョンが含まれることがあります。このような更新の際は、「Aurora PostgreSQL でサポートされる照合」で説明されているガイドラインに従うことをお勧めします。
代替のブルー/グリーンのアップグレードテクニック
状況によっては、古いクラスターからアップグレードされたクラスターへの即時の切り替えが最優先事項です。このような場合、古いクラスターと新しいクラスターを並べて実行するマルチステッププロセスを使用できます。ここでは、新しいクラスターが引き継ぐ準備ができるまで、古いクラスターから新しいクラスターにデータをレプリケートします。詳細については、「データベース更新のために Amazon RDS ブルー/グリーンデプロイを使用する」を参照してください。