环境准备
- 架构:3主3从(Redis集群最少3主3从)
- 服务器:CentOS7
- Redis版本:Redis5.0.5
- 网络环境:
- 192.168.188.99(主机名:master)
- 192.168.188.100(主机名:master2)
- 192.168.188.101(主机名:master3)
- 192.168.188.102(主机名:slave)
- 192.168.188.103(主机名:slave2)
- 192.168.188.104(主机名:slave3)
- 各个主机防火墙均已关闭
- 注意:2018年十月Redis发布了稳定版本的5.0版本,放弃Ruby的集群方式,改为使用C语言编写的redis-cli的方式,是集群的构建方式复杂度大降低。
redis配置
修改主机的redis.conf开启集群
删除文件
删除之前Redis的rdb文件,如果有aof文件的话需要把aof文件也删除了,以及以前集群遗留下来的node.conf文件.
下面是我每台主机redis安装目录详情.配置了三台master和三台slave
密码认证
如果主机配置的有密码的话,需要在每台主机的redis.conf文件中修改配置密码访问
开机![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/7c4a3ab0dea621d36c1274f423eb3fae.png)
创建集群
- -a:当前主机密码
- create:创建集群 参数是集群中各个节点的IP地址或者主机名加上端口号
- cluster-replicas 1:意思是每个Master带着1个Slave
集群创建成功
[root@master bin]# ./redis-cli -a xiaochen0. --cluster create 192.168.188.99:6379 master2:6379 master3:6379 slave:6379 slave:6379 slave2:6379 slave3:6379 --cluster-replicas 1
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
>>> Performing hash slots allocation on 7 nodes...
Master[0] -> Slots 0 - 5460
Master[1] -> Slots 5461 - 10922
Master[2] -> Slots 10923 - 16383
Adding replica slave2:6379 to 192.168.188.99:6379
Adding replica slave3:6379 to master2:6379
Adding replica slave:6379 to master3:6379
Adding extra replicas...
Adding replica slave:6379 to 192.168.188.99:6379
M: 38893e64753481f053663756330f7654914113a0 192.168.188.99:6379
slots:[0-5460] (5461 slots) master
M: 4b353d3b6ef42813fdd4b48c0c14cba7535c71a6 master2:6379
slots:[5461-10922] (5462 slots) master
M: 2f4808694e7d4c9cf798ec5fbe33bbf0bc999927 master3:6379
slots:[10923-16383] (5461 slots) master
S: af34800d1d69026a65730b21841074c4173b9a88 slave:6379
replicates 38893e64753481f0536637563