docker 环境下 redis的哨兵模式

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

猜你喜欢

转载自blog.csdn.net/qq_41948178/article/details/106585244