redis 的安裝
使用阿里雲安裝redis
啓動redis
創建配置文件
port 6379
logfile "redis-6381.log"
dir /data
appendonly yes
appendfilename appendonly.aof
# slaveof 127.1.0.1 6379
啓動redis鏡像同時配合容器卷
# docker run -p 6379:6379 --name redis -v /home/docker/redis/redis.conf:/etc/redis/redis.conf -v /home/docker/redis/redis-data:/data -d redis redis-server /etc/redis/redis.conf
測試
測試連接。使用redis客戶端添加數據,
查看服務器中的數據
另外兩個也是類似,至此,單機版的創建完成。
主從複製模式
修改從設備配置文件,添加主設備的ip。
port 6379
logfile "redis-6381.log"
dir /data
appendonly yes
appendfilename appendonly.aof
slaveof 192.168.1.10 6379
進入從設備容器,查看從設備的狀態
進入主設備的容器,查看主設備的狀態
對另一個從設備進行同樣的操作,最後結果如下圖所示。
測試主從複製模式
查看從設備中的數據
哨兵模式
在每個redis的服務器上搭建哨兵容器
哨兵的配置文件
port 26379
dir "/data"
logfile "sentinel-26379.log"
sentinel monitor mymaster 192.168.1.10 6379 2
sentinel down-after-milliseconds mymaster 10000
# sentinel failover-timeout mymaster 60000
# sentinel auth-pass mymaster 12345
搭建
啓動哨兵的容器
# docker run -p 26379:26379 -v /home/docker/redis/redis-sentinel.conf:/etc/redis/redis-sentinel.conf -v /home/docker/redis/sentinel-data:/data -d redis redis-sentinel /etc/redis/redis-sentinel.conf
查看哨兵的狀態
這裏顯示主設備的地址信息。
這裏的sentinels的信息與我實際創建的docker地址不一樣,不知道爲什麼
斷聯
關閉主設備(192.168.1.10),看能否正常切換
查看任一哨兵的信息
查看(1.11上)redis容器的信息
查看另一個從設備的變更。
1.11 作爲新的主設備也可以正常添加數據
,1.7 依然是從設備,所以還是不能創建
重啓之前的主設備
自動同步 書
巨人的肩膀
https://www.jianshu.com/p/ce1d78cd368a