はじめに

初老ともなると日々変化するGUIについてゆくのがつらくなります。とおもったらCLIでも方法がかわっていた Auroraのアップデートについてのメモとなります。

Auroraアップデートの方式変更

1.8からだとおもいますが、インスタンス単位ではなくクラスター単位でのアップデートとなりました。最近の変更なので日本語のドキュメントと英語のドキュメントで相違がでています。ちょっと古いとおもったら、英語のドキュメントを確認するのが初老の嗜みです。

CLIでのアップデート方法

7割方自分用なので特に説明なしです。

#クラスター名
DBCLUSTER_ID= <<環境にあわせて設定>>
#ARNの作成
DBCLUSTER_ARN=arn:aws:rds:ap-northeast-1:<>:cluster:${DBCLUSTER_ID}
#AWS CLIのプロファイル設定(必要であれば)
AWS_PROFILE="--profile default"
#事前スナップショット名
SNAPSHOT_NAME="BEFORE-UPDATE-${DBCLUSTER_ID}"

#事前スナップショット作成
aws  ${AWS_PROFILE}  rds create-db-cluster-snapshot   \
--db-cluster-identifier  ${DBCLUSTER_ID}  \
--db-cluster-snapshot-identifier ${SNAPTHOT_NAME}

sleep 10;

#Auroraアップグレード
aws ${AWS_PROFILE} rds apply-pending-maintenance-action \
--resource-identifier ${DBCLUSTER_ARN} \
--apply-action system-update \
--opt-in-type immediate 

補足情報

Auroraの更新ではフェイルオーバーがあるとおもってましたが、基本ないです。。DBエンジンの再起動だけの停止時間(体感20秒ないくらい?)ですと、DNSをともなうフェイルオーバーよりも短いというのが理由なので、大規模アップデートだとフェイルオーバーするのかもしれません。まだ経験したことないですが。
1.10からゼロダウンタイムパッチがリリースされたということなので今後停止時間すらなくなるかもしれません
意外なことにWriterをアップデートするとReaderも再起動します。ログレプリケーションが止まるためのようです。

元記事はこちら

Aurora アップデートをCLIで行なう