레디스의 고가용성 구성방법은 Sentinel과 Cluster 2가지가 존재한다.
Redis Sentinel
- Sentinel이라는 별도의 컴포넌트가 감시하고 있다가
- Master가 다운되면 자동으로 Slave를 Master로 올려주는 방식이다.

https://ichi.pro/ko/redis-sentinel-mich-spring-lettuce-keullaieonteuleul-tonghan-go-gayongseong-173327786572930
Client는 Sentinel을 통해 접속하므로 장애시 엔트포인트를 변경할 필요가 없다.
Sentinel은 다음과 같은 동작을 한다.
- 모니터링 : 노드들에 문제가 없는지 확인
- Fail Over : Master 장애시 새로운 Master 선출
- 알림 : 장애시 알림 전송기능
주의할 점은 Sentinel Node의 갯수를 3개 이상의 홀수로 구성해야한다.
Redis Cluster

- 클라이언트가 직접 각각의 마스터에 직접 접근한다.
- 각각은 데이터를 샤딩해서 나누어 가지고 있으며,
- Fail Over를 지원한다.
Sentinel vs Cluster
어떤 것을 사용하는 것이 좋을까?
- 트래픽이 많은 경우에는 데이터 샤딩을 지원해서 클러스터가 좋다.
- 큰 트래픽이 없다면, 센티넬이 적합하다. 훨씬 간단한 세팅