@shinyaz

RDS Proxy 経由の Blue/Green Switchover では AdminShutdown ではなく SSL 切断が発生する

RDS Proxy 経由の Blue/Green Switchover を検証していて気づいた。ドキュメントでは Aurora PostgreSQL の Switchover 中のエラーとして AdminShutdown: terminating connection due to administrator command が記載されているが、RDS Proxy 経由では別のエラーが返ってきた。

Output
SSL connection has been closed unexpectedly
connection to server was lost

ドキュメントの AdminShutdown は Blue が read-only モードに入った後にクライアントが直接受け取るエラーだ。RDS Proxy 経由の場合、Proxy が過渡期にクライアント接続を維持したまま内部で Blue にルーティングを継続し、Switchover 完了を検知した時点で接続をドロップすると考えられる。そのため、クライアントが受け取るのは AdminShutdown ではなく SSL 切断になる。

アプリケーション側のエラーハンドリングで AdminShutdown だけを捕捉していると、RDS Proxy 経由の Switchover を検出できない。接続プールのヘルスチェックや、SSL/接続切断系のエラーも含めてリトライ対象にしておく必要がある。

共有する

田原 慎也

田原 慎也

ソリューションアーキテクト @ AWS

AWS ソリューションアーキテクトとして金融業界のお客様を中心に技術支援をしており、クラウドアーキテクチャや AI/ML に関する学びをこのサイトで発信しています。このサイトの内容は個人の見解であり、所属企業の公式な意見や見解を代表するものではありません。