2014-03-05 3 views
1

나는 각각에 2 명의 노예와 1 명의 sentinal이있는 redis 마스터 설정을 가지고 있습니다.Redis 복제 구성

마스터가 2 초 (+ sdown) 씩 내려 가서 백업 (-sdown)하면 마지막 스냅 샷을 읽고 슬레이브는 마스터와 다시 동기화됩니다.

이 문제는 마지막 저장과 + sdown 사이에 많은 쓰기가 있었을 수 있다는 것입니다. 마스터가 + sdown에서 -sdown으로 이동하고 절대로 + odown (페일 오버가 시작되는 위치) 인 경우에는 슬레이브에서 동기화 할 수 있어야합니다. 내 추론은 복제 스트림이 연속적이며 슬레이브가 + sdown이 발생했을 때 마스터 상태를 가장 정확하게 반영한다고 볼 수 있습니다.

내가 할 수있는 설정이 있습니까? AOF 또는 스냅 샷을 사용하도록 강요 당했습니까?

(편집 : 추가 감시 태그)

답변

3

당신은 부분적인 장애 조치를 할 수 없어, 중 당신은 그것을하거나 주인에게 노예를 증진의 측면에서하지 않습니다. 레디 스 Sentinel에서

:

자동 페일 오버. 마스터가 예상대로 작동하지 않으면 Sentinel은 슬레이브가 마스터로 승격되고 다른 추가 슬레이브가 새 마스터를 사용하도록 재구성되며 Redis 서버를 사용하는 응용 프로그램이 사용할 새 주소를 알리는 장애 조치 프로세스를 시작할 수 있습니다 연결.

+2

+1. 참고 : Redis 2.8부터 부분 재 동기화가 가능합니다. 그러나 이는 부분 장애 조치와 다릅니다. 쓰기 데이터가 매우 민감하여 손실되지 않아야하는 경우 몇 가지 작업을 수행 할 수 있습니다. 하나는 슬레이브에 연결하고, 키 스페이스 알림이나 기타 (사용자 정의) 서브 스크립 션을 사용하여 '데이터는 안전합니다.'라는 응답입니다. 또 다른 하나 (범위에 따라 다름)는 bgsave 다음에 비동기 검사가 될 수 있으며, 이는 슬레이브를 전혀 필요로하지 않습니다. –

+0

@TwBert 유용한 팁! 주목, – Gustav

+0

고마워, 천만에! –