Sentinel로 수동 페일오버 수행 및 토폴로지 정리
RedisSentinel명령어
# First check quorum and an eligible replica:
redis-cli -p 26379 SENTINEL CKQUORUM mymaster
redis-cli -p 26379 SENTINEL REPLICAS mymaster
# Manual failover without waiting for agreement from other sentinels:
redis-cli -p 26379 SENTINEL FAILOVER mymaster
# Verify the new master (must be the same on all sentinels):
redis-cli -p 26379 SENTINEL GET-MASTER-ADDR-BY-NAME mymaster
# If old/removed replicas remain listed, reset sentinels one at a time, 30 s apart:
redis-cli -p 26379 SENTINEL RESET mymaster하는 일
master가 정상이어도 가장 적합한 replica에 master 역할을 넘긴다. 이후 새 master를 확인하고 더 이상 존재하지 않는 replica를 sentinel 메모리에서 지운다.
사용 시점
master 호스트의 계획된 유지보수 전, 페일오버 훈련 중, 또는 master를 다른 데이터 센터로 옮길 때.
주의
페일오버 중 몇 초간 쓰기 중단이 있으며, master에 기록되었지만 아직 복제되지 않은 데이터는 손실될 수 있다. replica-priority 0인 replica는 선택되지 않으며 적격 replica가 없으면 명령이 오류를 반환한다. 모든 sentinel에서 동시에 SENTINEL RESET을 실행하면 토폴로지 정보가 일시적으로 사라지므로 각각 간격을 두고 따로 실행한다. 클라이언트가 Sentinel에 master 주소를 묻는 드라이버를 사용하는지 확인한다.