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