1. 程式人生 > >Redis哨兵機制

Redis哨兵機制

pin ali 角色 ID seconds slaveof name play minor

Redis Sentinel物理結構圖

角色 IP Port 別名
master 127.0.01 6379 主節點
slave-1 127.0.01 6380 slave-1節點
slave-2 127.0.01 6381 slave-2節點
sentinel-1 127.0.01 26379 sentinel-1節點
sentinel-2 127.0.01 26380 sentinel-2節點
sentinel-3 127.0.01 26381 sentinel-3節點

1. 啟動主節點

配置:

port 6379

daemonize yes

logfile “6379.log”

dbfilename “dump-6379.rdb”

dir “/opt/soft/redis/data/”

啟動主節點,並用一下命令驗證主節點是否啟動成功:

redis-cli -h 127.0.0.1 -p 6379 ping

此時的拓撲結構圖如下:

技術分享圖片

2. 啟動兩個從節點

配置:

和主節點一樣,只是添加了一條:slaveof 127.0.0.1 6379

啟動兩個從節點,並驗證是否啟動成功。

3. 確認主從關系

主節點視角,使用info

命令查看

從節點視角,使用info命令查看

此時的拓撲結構圖如下:

技術分享圖片

4. 配置sentinel節點

配置:

port 26379

daemonize yes

dir /opt/soft/redis/data

sentinel monitor mymaster 127.0.0.1 6379 2

sentinel down-after-milliseconds mymaster 30000

sentinel parallel-syncs mymaster 1

sentinel failover-timeout mymaster 180000

  1). Sentinel節點的默認端口是26379。

  2). sentinel monitor mymaster 127.0.0.1 6379 2配置代表sentinel-1節點需要監控127.0.0.1:6379這個主節點,2代表判斷主節點失敗至少需要2個sentinel節點同意,mymaster是主節點的別名。

5. 啟動sentinel節點

按照上述方法配置其余兩個sentinel節點,然後分別啟動

redis-sentinel redis-sentinel-26379.conf

6. 確認

redis-cli -h 127.0.0.1 -p 26379 info sentinel

技術分享圖片

7. 最後的拓撲結構圖如下:

技術分享圖片

8. 驗證

Redis哨兵機制