쿠버네티스 환경에서 Redis-Standalone 구축 실전 가이드 ③


Failover(장애조치) 테스트

🖧 1. Redis-Standalone 파드 다이어그램 (초기 상태)

┌──────────────┐ │ Redis(220) │ │ 🟢Master │ └──────────────┘

1. Failover(장애조치) 테스트

Redis-0 파드를 다운시킨다. 복제는 없다.
💥 파드 다운 후 재시작하면 IP가 변경된다.

Redis-0 💥 다운(delete)

💻 Terminal-1

💻 Redis-0 LOG

① 15초 kill 시그널을 받고 레디스 다운 (+0초)
② 18초 레디스 자동 재시작 (+3초)
③ 22초 데이터 로딩 완료(약 5초 소요) (+7초)
④ 22초 레디스 준비 완료 (+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 파드 다이어그램 (Failover 후)

┌──────────────┐ │ Redis(222) │ │ 🟢Master │ └──────────────┘

🧑‍💻 결론

Redis-Standalone Failover(장애 조치) 테스트 성공
파드(pod)를 다운, 재시작하면 IP가 변경된다. 약 17초 후 App가 재접속 성공해서 데이터를 입력한다.
약 30초(여유 있게) 정도 다운되어도 큰 문제가 없는 서비스라면 Redis-Standalone을 사용해 볼 수도 있다.


➡ 여기까지는 Redis-Cluster 단독으로 테스트했습니다.
Java(Spring) App와 연결해서 작동하는 것까지 보려면 여기를 클릭하세요.



<< K8s Redis-Standalone ② K8s Redis Scale-Out(확장) >>

Email 답글이 올라오면 이메일로 알려드리겠습니다.