CloudSQLを使っていると逃げきれない仕様の一つに定期メンテナンスがあります。 数ヶ月に一度、最大で90秒ほどDBインスタンスが落ちる仕様なため、プロダクション環境などでCloudSQLを利用していると、必然と90秒のメンテナンスによるサービスダウンが発生しかねません。 頑張って高可用クラスタ︵冗長化︶してたり、リードレプリカを作成しても、メンテナンス中はすべて停止してしまうため、サービスダウンは不可避です。 そんなわけでCloudSQLのこの仕様について頭を悩ませているインフラ運用者もきっと多いはず!ということで2年くらいCloudSQLを運用してみえた運用方法の策定基準をまとめてみます。 前提 サーキットブレイカーの導入など、アプリケーションレイヤでのDBインスタンスの停止︵GCPが一番推奨している対策方法︶に対する処方は抜きとする モノリスなのかマイクロサービス なのかで打ち手