본문 바로가기
Server

Redis Replication - Master Slave Sentinel

by Gil Granger 2019. 3. 20.

 

Redis Master Slave 구성

 

 

 

 

Redis Master Configuration

 

$ tar xzvf redis-5.0.4.tar.gz

 

 

 

 

$>

   replicaoff  

    #마스터 비밀번호 설정
    requirepass 

    # 동일 마스터 비밀번호 설정
    masterauth 

    #주석 해제 
    repl-ping-slave-period 10  

    #주석 해제
    repl-timeout 60 

 

 

 

 

 

 

 

 

Redis Slave Configuration

 

 

$>

   #bind ip 지정 (상호 LISTEN 대역 IP를 기입한다)
    bind 127.0.0.1 

    #master의  ip와 port
    replicaof 10.29.10.67 6379

    #비밀번호 설정  
    requirepass 

    # replication 마스터
    masterauth 

    #주석 해제 
    repl-ping-slave-period 10  

    #주석 해제
    repl-timeout 60 

 

 

 

 

 

 

각각 데몬을 재시작하여 각각 Master와 Slave 가 Replication이 잘 작동되는지 로그를 확인합니다.

 

 

$ tail -f log/redis.log 

 

Replication Test

 

 

Master

$ 127.0.0.1:6379> set repl ok

 

Slave

$ 127.0.0.1:6379> get repl
"ok"

 

 

Redis Sentinel Configuration

 

 

 

 

 

$>

   #bind ip 지정 (상호 LISTEN 대역 IP를 기입한다)
    bind 127.0.0.1 

    #master의  ip와 port
    # Master와 quorum 숫자 값을 입력합니다. 
    sentinel monitor    <quorum>

    # Master와 몇초동안 응답에 실패 시 판단할 것인지 시간 설정
    sentinel down-after-milliseconds  5000

    # Master가 장애 발생시 Slave와 데이터를 sync 하기 위한 Slave 수 설정
    sentinel parallel-syncs  1

    # Failover 시 3분이내에 Failover처리가 완료될때 Slave를 Master로 전환합니다.
    sentinel failover-timeout  180000

    # Master 비밀번호 설정  
    requirepass 

    # Master 비밀번호 설정
    masterauth 

 

 

 

설정 완료 후 실행시킨다.

$ src/redis-sentinel sentinel.conf 

 

로그를 통해 정상적으로 실행여부를 확인한다.
 
 
 

Sentinel 동작 확인

 

Master의 데몬을 종료시켜서 Log을 통해 Slave가 Master로 선출되는지 확인하면 된다.

 

 

 

 

참고

 

https://redis.io/topics/sentinel

http://develop.sunshiny.co.kr/1006

https://bryan.wiki/244

https://ossian.tistory.com/39

https://riceworld.tistory.com/19

'Server' 카테고리의 다른 글

몽고디비 2) Security Authentication 설정 (with Replica Set)  (0) 2019.04.12
몽고디비 1) Replica Set 설정  (1) 2019.04.12
Redis 5.0.4 Install  (0) 2019.03.20

댓글