GCP(GCE)でalias ipを使う
IPエイリアスとかVIPとかeth0:0みたいなやつです。
と言っても現状、
Configuring an Instance's IP Addresses - Compute Engine — Google Cloud Platform
Choose an IP address that doesn't belong to any network in your project.
なので物理と同じ感覚では使えません。
AWSのVPCでもインターフェース付け替えとか似たようなものですが…。
一台だけの場合
- IP転送オプション付きでinstanceを起動する
- VIPを決めてeth0:0に付与する
- routingでinstanceを指定して転送する
二台以上準備してVIPを付け替えたい場合
- 該当するすべてのinstanceで上記の2.までの処理をしておく
- 付け替え時はroutingの宛先を変更する
- 前のルールを削除→宛先を再作成、またはroutingのpriorityを高くして差し込む
ぐらいでしょうか。
付け替えるには、APIアクセスを許可したinstanceを使うのが楽です。
もしgoogleで辿り着いた方はMHAやredis-sentinelをGCE上で運用したいのかもしれませんが、素直にCloudSQL使ったりtwemproxy-agent使ったりするほうがいいでしょう。