Amazon Aurora のポート番号設定を変更する際にダウンタイムが発生するか教えてください

2022.10.18

困っていた内容

Aurora MySQL のデフォルトポート番号 3306 を他ポート番号へ変更したいのですが、ポート番号変更時にダウンタイムが発生するか教えてください。

結論

Aurora クラスターのポート番号を変更する際には、ダウンタイムが発生します
Amazon Aurora の設定

設定と説明 方法 スコープ ダウンタイムに関する注意
データベースポート
DB クラスターへのアクセスに使用するポート。
AWS Management Console の使用、コンソール、CLI、API を使用した DB クラスターの変更。
AWS CLI を使用して、modify-db-cluster を実行し、--port オプションを設定します。
RDS API を使用して、ModifyDBCluster を呼び出し、Port パラメータを設定します。
DB クラスター全体 この変更中に、機能停止が発生します。DB クラスター内のすべての DB インスタンスは、すぐに再起動されます

検証してみた

どのようにインスタンスのステータスが変化し、どれくらいの時間ダウンタイムが発生するかを検証環境で確認してみました。

1.デフォルトポート番号でクラスターを作成
MySQL のデフォルトポート番号 3306 のまま、ライターインスタンス 1 台、リードレプリカ 1 台の構成で Aurora クラスターを作成しました。

2.Aurora クラスターを選択して変更
クラスターを選択して、設定変更画面へ移動します。

3.設定変更画面の項目"接続"を確認
以下は、設定変更前の状態です。
ポート番号は、Aurora クラスター作成時のデフォルト設定 3306 となっています。

4.接続ポートを 3305 へ変更
接続に利用するポート番号を 3305 へ変更してみます。

5.設定変更を実施

6.ライターインスタンスとリードレプリカのステータスが共に "変更中" へ変化

7.ライターインスタンスのステータスが "変更中" から "利用可能" へ変化

8.続いてリードレプリカのステータスが "変更中" から "利用可能" へ変化

設定変更を実施してから、リードレプリカがステータス "利用可能" となるまで、おおよそ 2 分 30 秒かかりました。
※実際のダウンタイムは、インスタンスクラスやクラスター構成により変わることが考えられる為、あくまで参考情報とお考えください。

9.マネジメントコンソール上でポート番号が 3305 になっていることを確認
マネジメントコンソール上で、ポート番号が 3305 へ変更されていることを確認できました!

まとめ

ポート番号を変更した際に、インスタンスのステータスがどのように変化するかに注目して検証してみました。
個人的には、インスタンスのステータスが "ポート番号変更中" にならないかと期待していたのですが、特別なステータスは用意されていませんでした。

接続元アプリ側の仕様変更等によりポート番号を変更する際は、ダウンタイムが発生することを考慮に入れてご実施いただければと思います。

この記事がどなたかのお役に立てば幸いです。

参考資料