1、配置redis master,redis slave(配置具體操作見上文http://www.companysz.com/wangchaozhi/p/5140469.html)。
redis master ip:127.0.0.1:port 6379(默認配置文件即可)
redis slave1 ip:127.0.0.1:port 6380(修改端口號為6380,并配置為master的slave,# slaveof <masterip> <masterport>,去掉#,更改為slaveof 127.0.0.1 6379)
redis slave1 ip:127.0.0.1:port 6381(修改端口號為6381,并配置為master的slave,# slaveof <masterip> <masterport>,去掉#,更改為slaveof 127.0.0.1 6379)
2、配置sentinel(也可以配置為集群,這里配置一個作為演示)。
sentinel monitor mymaster 127.0.0.1 6379 1
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 180000
sentinel parallel-syncs mymaster 1
3、運行master,slave1、slave2,以及sentinel。
啟動redis服務的命令redis-server.exe redis.windows.conf
啟動sentinel命令redis-server.exe sentinel.conf --sentinel
4、模擬主機宕機
輸入如下命令
redis-cli -h 127.0.0.1 -p 6379 shutdown
此時觀察sentinel服務。
可以知道6381端口的slave被提升為master。測試是否可以寫入數據
再次啟動master的服務6379端口。
觀察master和sentinel服務提示
由上圖標示的紅線可以知道,原來的master(6379)成為6381的slave。
到此,主從自動切換配置測試完成。
新聞熱點
疑難解答