一、集群部署
1、创建自定义网卡(Docker的虚拟网桥设备docker0,和自定义网络不连通,因此我们使用自定义网络的好处就是网络隔离,本文将 Redis集群放在专门的 Redis 网段中运行)
查看 docker 网卡列表,我们自定义的名为 redis 的网卡已创建成功
2、用 Shell 脚本批量生成 6 个 Redis 配置
3、编写 Shell 脚本,启动 6 个 Redis 容器
查看 6 个容器是否启动成功
4、进入一个 Redis,在其中创建集群
创建成功
5、连接集群(加 -c 参数连接 Redis 集群,不然连的是单机)
二、高可用测试
我们插入一个 k-v(多插入几个值也能看出集群负载均衡的特点,k-v在集群中的存储分布较为均衡,另外,用 keys * 命令只能看出当前结点的所有k-v的键,而看不到的其他k-v在其他结点上,虽然看不到,但如果某k-v存在的话,当然是可以获取到)根据日志可以看出是加入到了 3 号 Redis 中,而根据上图,我们又可以知道 3 号 Redis 的从结点是 4 号,因此,我们将 3 号停止,看看还能不能从 4 号 Redis 中获取到我们的 k-v
停止 3 号 Redis 容器,获取之前存入 3 号 Redis 的 k-v,获取成功,日志提示是在其从结点获取到的结果,证明集群部署成功 ~