redis哨兵

redis哨兵

image-20200918231819113

1个master node, 2个replica node, 3个sentinel

master 7000

sentinel 26379
sentinel monitor mymaster 127.0.0.1 7000 2
slave1  7001 (replica of 7000)

sentinel 26389
sentinel monitor mymaster 127.0.0.1 7001 2
slave 7002 (replica of 7000)

sentinel 26399
sentinel monitor mymaster 127.0.0.1 7002 2

step1

Start master and replicas

cd master
redis-server master.conf

cd rep1
redis-server replica.conf

cd rep2
redis-server replica.conf

Step2

Start sentinel

cd master
redis-server ./sentinel.conf --sentinel

cd rep1
redis-server ./sentinel.conf --sentinel

cd rep2
redis-server ./sentinel.conf --sentinel

image-20200918232804722

Step3

Check sentinel

redis-cli -p 26379 info sentinel
# Sentinel
sentinel_masters:1
sentinel_tilt:0
sentinel_running_scripts:0
sentinel_scripts_queue_length:0
sentinel_simulate_failure_flags:0
master0:name=mymaster,status=ok,address=127.0.0.1:7000,slaves=2,sentinels=3

show details about master

redis-cli -p 26379 sentinel master mymaster
1) "name"
2) "mymaster"
3) "ip"
4) "127.0.0.1"
5) "port"
6) "7000"
7) "runid"
8) "853312983088e3bdd048887ed51551822852bda9"
9) "flags"
10) "master"
11) "link-pending-commands"
12) "0"
13) "link-refcount"
14) "1"
15) "last-ping-sent"
16) "0"
17) "last-ok-ping-reply"
18) "436"
19) "last-ping-reply"
20) "436"
21) "down-after-milliseconds"
22) "30000"
23) "info-refresh"
24) "6284"
25) "role-reported"
26) "master"
27) "role-reported-time"
28) "257355"
29) "config-epoch"
30) "0"
31) "num-slaves"
32) "2"
33) "num-other-sentinels"
34) "2"
35) "quorum"
36) "2"
37) "failover-timeout"
38) "180000"
39) "parallel-syncs"
40) "1"

To shows detailed information about the slaves and sentinels

# redis-cli -p 26379 sentinel slaves mymaster
# redis-cli -p 26379 sentinel sentinels mymaster

Step4

Aask master address

redis-cli -p 26379 sentinel get-master-addr-by-name mymaster
image-20200918232939625

Step 5

Test automactic failover by stop master node


How to Setup Redis For High Availability with Sentinel in CentOS 8 – Part 2 https://www.tecmint.com/setup-redis-high-availability-with-sentinel-in-centos-8/

Redis Sentinel — High Availability: Everything you need to know from DEV to PROD: Complete Guide https://medium.com/@amila922/redis-sentinel-high-availability-everything-you-need-to-know-from-dev-to-prod-complete-guide-deb198e70ea6

Redis Sentinel — High Availability: Everything you need to know from DEV to PROD: Complete Guide https://medium.com/@amila922/redis-sentinel-high-availability-everything-you-need-to-know-from-dev-to-prod-complete-guide-deb198e70ea6