[Redis] HA를 위한 Redis 아키텍처의 종류
Redis의 HA
Replication
- 단순 복제 연결
- Master-Replica
- Master only로도 사용 가능 -> 개발용
- 항상 한 개의 Master 노드만 존재
- Master 노드는 RDB 파일을 생성하여 Replica 노드에 전달
- 실시간 비동기 (Async) 복제 방식 사용
- HA 기능이 없어 장애 발생 시 수동으로 연결정보 변경 필요
Sentinel
- 자동 failover 가능한 HA 구성
- Master-Replica를 모니터링하는 Sentinel
- Sentinel은 데이터를 저장하지 않고 오직 모니터링만 수행
- 정상 동작을 위해 최소 3대 이상의 홀수개 Sentinel 프로세스 필요
- 과반수 이상의 Sentinel이 동의하여야 failover 진행
- Application은 Sentinel로 연결하여 Master, Replica 노드 정보를 받아옴
Cluster
- Scale-out과 HA 구성
- Full Mesh 구조
- 키를 여러 노드에 자동 분할하여 저장 (Sharding)
- 모든 Master, Replica 노드는 가십 프로토콜을 사용해 서로 통신
- 모든 노드가 서로 감시. Maste가 비정상일 때 자동 Failover
- 최소 3개의 Master 노드 필요
아키텍처 선택 기준