k8s_redis_standalone_3
クバネティス(Kubernetes) 環境で Redis-Standalone 構築 実践ガイド ③
Failover(フェイルオーバー)テスト
🖧 1. Redis-Standalone ポッド(Pod) ダイアグラム(初期状態)
┌──────────────┐
│ Redis(220) │
│ 🟢Master │
└──────────────┘
1. Failover(フェイルオーバー)テスト
Redis-0 ポッド(Pod) をダウンさせます。レプリカはありません。
💥 ポッド(Pod) ダウン後に再起動すると IP が変わります。
Redis-0 💥 ダウン(delete)
💻 Terminal-1
💻 Redis-0 LOG
① 15秒 kill シグナルを受け Redis ダウン(+0秒)
② 18秒 Redis が自動再起動(+3秒)
③ 22秒 データロード完了(約5秒)(+7秒)
④ 22秒 Redis 準備完了(+7秒)
📄 redis.log
Redis-0 全ログ
📄 redis.log
💻 App ログ
① 15秒 接続切断 -> 再接続失敗(+0秒)
② 19秒 5回再試行後に失敗エラー(+4秒)
③ 24秒 再接続 -> 失敗(+9秒)
④ 32秒 再接続 -> 成功(+17秒)
⑤ 32秒 データ投入成功(+17秒)
💻 Terminal-2
App 全ログ
📄 App 全ログ
🧮 Failover(フェイルオーバー)後の状況
Redis-0 の IP が '10.42.0.220' から '10.42.0.222' に変わりました。
💻 Terminal-1
🖧 Redis-Cluster ポッド(Pod) ダイアグラム(Failover 後)
┌──────────────┐
│ Redis(222) │
│ 🟢Master │
└──────────────┘
🧑💻 結論
Redis-Standalone Failover(フェイルオーバー)テスト成功
ポッド(Pod) をダウンして再起動すると IP が変わります。
約17秒後に App が再接続に成功しデータを投入します。
約30秒(余裕を見て)ダウンしても大きな問題がないサービスなら
Redis-Standalone を使ってみることもできます。
➡ ここまでは Redis-Standalone 単独でテストしました。
Java(Spring) App と接続して動くところまで見るには、ここをクリックしてください。
| << K8s Redis-Standalone ② | K8s Redis Scale-Out >> |
|---|
Email
返事がかかってなれば、メールでお知らせします。
