반응형

들어가며

설명

  • Master-Slave Replication 방식과 구조는 동일
  • Sentinel 서버 3대를 더 두어 모니터링, 마스터 노드 장애시 failover 처리를 수행

설정하기

설명

  • Master-Slave Replication 방식으로 먼저 설정
  • master 1대, slave 2대로 구성
  • 이 예제에서는 master, slave 서버에 각각 sentinel도 함께 띄우도록 설정

각 서버에 sentinel 설정

  • sentinel.conf 복사
mkdir -p /home/ubuntu/sentinel \
&& cp /home/ubuntu/app/redis/sentinel.conf /home/ubuntu/sentinel
  • sentinel.conf 수정
vi /home/ubuntu/sentinel/sentinel.conf
# qourum : 지정한 수 만큼의 sentinel이 동의 하면 의사 결정이 진행됨
# sentinel monitor mymaster <redis master host> <redis master port> <quorum>
sentinel monitor mymaster 192.168.56.108 6379 2

# 센티널이 Master 인스턴스와 접속이 끊겼다는 것을 알기 위한 최소한의 시간
sentinel down-after-milliseconds mymaster 30000

# 페일오버 작업 시간의 타임오버 시간을 정함
sentinel failover-timeout mymaster 180000

# 이 값은 Master로부터 동기화 할 수 있는 slave의 개수를 지정
# 값이 클수록 Master에 부하가 가중
# 값이 1이라면 Slave는 한대씩 Master와 동기화를 진행
sentinel parallel-syncs mymaster 1

# sentinel 상태 변경 감지시 스크립트 실행
sentinel notification-script mymaster /home/ubuntu/sentinel/notify.sh

# 기타 설정
port 23679
daemonize yes
dir /home/ubuntu/sentinel
pidfile sentinel.pid
logfile sentinel.log

Sentinel 실행

  • 각 서버에서 모두 Sentinel 실행
redis-sentinel /home/ubuntu/sentinel/sentinel.conf \
&& ps -ef | grep redis

Sentinel 종료

redis-cli -p 26379 shutdown \
&& ps -ef | grep redis

참고

반응형

'Development > Redis' 카테고리의 다른 글

[Redis] Data Type  (0) 2020.12.30
[Redis] Pub/Sub (with Spring)  (0) 2020.12.30
[Redis] Master-Slave Replication  (0) 2020.12.30
[Redis] 명령어  (0) 2019.03.11
[Redis] 스프링 연동  (0) 2019.03.10

+ Recent posts