この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
困っていた内容
ドキュメントを参考にマネジメントコンソールで RDS for PostgreSQL から Aurora PostgreSQL への移行をスナップショットか Aurora リードレプリカを作成して行おうとしています。
ドキュメントに記載の手順をコンソールで実施していくと「スナップショットの移行」の項目がグレーアウトしており、「Aurora リードレプリカの作成」の選択肢も表示されません。対応方法について教えてください。
どう対応すればいいの?
RDS for PostgreSQL のバージョンによっては、AWS CLIを利用することでスナップショットや Aurora リードレプリカの作成が可能です。
スナップショットの場合
$ aws rds restore-db-cluster-from-snapshot \
--snapshot-identifier <DBスナップショットのARN> \
--engine-version <エンジンバージョン> \
--db-cluster-identifier <DBクラスタ名> \
--engine aurora-postgresql
$ aws rds create-db-instance \
--db-cluster-identifier <DBクラスタ名> \
--db-instance-class <<DBインスタンスクラス> \
--db-instance-identifier <DBインスタンス名> \
--engine aurora-postgresql
Aurora リードレプリカの場合
$ aws rds create-db-cluster \
--db-cluster-identifier <クラスター名> \
--engine-version <エンジンバージョン> \
--db-subnet-group-name <DBサブネットグループ名> \
--replication-source-identifier <ソースDBインスタンスのARN> \
--engine aurora-postgresql
$ aws rds create-db-instance \
--db-cluster-identifier <DBクラスタ名> \
--db-instance-class <<DBインスタンスクラス> \
--db-instance-identifier <DBインスタンス名> \
--engine aurora-postgresql
変更可能なエンジンバージョンかを確認する
RDS for PostgreSQL のエンジンバージョンとそれに対応する Aurora PostgreSQL のエンジンバージョン、マネジメントコンソールと AWS CLI での変更可否を検証してみました(※ 2021年10月23日時点)。
RDS for PostgreSQL | Aurora PostgreSQL | コンソール | AWS CLI |
---|---|---|---|
9.6.20 | 9.6.21 | ○ | ○ |
9.6.21 | 9.6.21 | ○ | ○ |
9.6.22 | 9.6.22 | × | ○ |
9.6.23 | × | × | × |
10.15 | 10.14, 10.16 | ○ | ○ |
10.16 | 10.16 | ○ | ○ |
10.17 | 10.17 | × | ○ |
10.18 | × | × | × |
11.10 | 11.11 | ○ | ○ |
11.11 | 11.11 | ○ | ○ |
11.12 | 11.12 | × | ○ |
11.13 | × | × | × |
12.5 | 12.6 | ○ | ○ |
12.6 | 12.6 | ○ | ○ |
12.7 | 12.7 | × | ○ |
12.8 | × | × | × |
13.1 | 13.3 | ○ | ○ |
13.2 | 13.3 | ○ | ○ |
13.3 | 13.3 | ○ | ○ |
13.4 | × | × | × |
上記の表をもとに移行が可能であるか、コンソールでの対応が可能であるかをご確認ください。