前提
准備了3台虛擬機,ip分別為,並且都裝好了redis
192.168.174.134 主
192.168.174.135 從
192.168.174.136 從
1.修改從節點192.168.174.135,redis的配置文件
1.1 修改replicaof
# replicaof <masterip> <masterport>
replicaof 192.168.174.134 6379
1.2 修改masterauth密碼(主機也要配置)
# masterauth <master-password>
masterauth imooc
1.3 從節點只能讀
replica-read-only yes
1.4 刪除改節點的rdb和aof文件
1.5 重啟該節點redis
1.6 進入redis,運行下面命令
info replication
2.修改從節點192.168.174.136,redis的配置文件,按照上面步驟在來一次
3.分別在3個機器輸入以下命令
info replication
192.168.174.134 主
192.168.174.135 從
192.168.174.136 從
4.如果有一個從機宕機,主機輸入下面命令
info replication
少一個
4.如果主機宕機,從機輸入下面命令
info replication
一主多從不能解決主機宕機后的問題,所以為了保持redis集群可靠性要加上哨兵具體文章下面
https://www.cnblogs.com/hardy-wang/p/13846213.html
上面講的是有磁盤化的方式同步,也是redis默認的具體的原理如下
redis也支持無磁盤話的方式同步,通過socket傳輸,應用場景主要是磁盤很慢和網絡很快的情況下使用,現在還處於試用階段
1.改為無磁盤傳輸,修改配置
repl-diskless-sync no
改為
repl-diskless-sync yes