安裝環境
操作系統:Windows7 64位
Redis版本:Redis-x64-3.2.100
集羣配置
主:127.0.0.1:6379
從:127.0.0.1:6380
從:127.0.0.1:6381
哨兵:127.0.0.1:26379
哨兵:127.0.0.1:26380
哨兵:127.0.0.1:26381
詳細步驟
思路:複製三份Redis安裝目錄,模擬三個Redis服務節點,一個主節點、兩個從節點,Redis配置只需修改從節點的,然後,需要在每個節點創建一個哨兵配置文件sentinel.conf,最後,各自創建方便啓動的腳本。
與普通的主從模式不同的地方是,在每個節點增加了一個哨兵配置,多啓動了一個哨兵進程,用於監聽節點的運行狀態。
1、Redis默認端口6379,主節點配置不用改,只修改從節點配置,具體參數如下
#從節點端口
port 6380
#主節點IP和端口
slaveof 127.0.0.1 6379
2、在3個Redis主目錄下,分別創建sentinel.conf配置文件,配置參數與下面類似,記得修改一下哨兵端口、監聽節點的IP和端口
bind 127.0.0.1
# 當前Sentinel服務運行的端口
port 26379
# 哨兵監聽的主服務器
sentinel monitor mymaster 127.0.0.1 6379 2
# 3s內mymaster無響應,則認爲mymaster宕機了
sentinel down-after-milliseconds mymaster 3000
# 如果10秒後,mysater仍沒啓動過來,則啓動failover
sentinel failover-timeout mymaster 10000
# 執行故障轉移時,最多有1個從服務器同時對新的主服務器進行同步
sentinel parallel-syncs mymaster 1
sentinel monitor [master-group-name] [ip] [port] [quorum]
master-group-name:master名稱(可以自定義)
ip port : IP地址和端口號
quorun:票數,Sentinel需要協商同意master是否可到達的數量。
3、在主從Redis根目錄下,創建一個快速啓動腳本startReidsServer.bat
@echo off
redis-server.exe redis.windows.conf
@pause
4、在主從Redis根目錄下,創建Sentinel啓動腳本startRedisSentinel.bat
@echo off
redis-server.exe sentinel.conf --sentinel
@pause
5、在主從Redis根目錄同級目錄下,創建3個快速啓動腳本start6379.cmd、start6380.cmd、start6381.cmd,cd的目錄記得換一下
@echo off
cd Redis-x64-3.2.100-6379
startRedisServer.bat
6、在主從Redis根目錄同級目錄下,創建3個快速啓動腳本start26379.cmd、start26380.cmd、start26381.cmd,cd的目錄記得換一下
@echo off
cd Redis-x64-3.2.100-6379
startRedisSentinel.bat
啓動
整完之後大概這樣子的
先啓動主節點,再啓動從節點。也就是先執行start6379.cmd,然後,再執行start6380.cmd、start6381.cmd。
最後,啓動3個哨兵服務。