因为每个master之间都会检测彼此的健康状态,并且客户端请求可以访问集群的任意节点,自动路由到正确的节点上,并且默认是读写分离的,写在master上,读在slaver上,则作用和哨兵模式一样,则分片集群时就不设置哨兵模式。
搭建分表集群
1.创建目录
创建出7001,7002,7003,8001,8002,8003
cd /tmp
rm -rf 7001 7002 7003 8001 8002 8003
mkdir 7001 7002 7003 8001 8002 8003
2.Redis 配置文件
port 6379
#开启集群功能
cluster-enable yes
#集群的配置文件名称,不需要我们创建,由redis自己维护
cluster-config-file /tmp/6379/nodes.conf
#节点心跳失败的超时时间
cluster-node-timeout 5000
#持久化文件存放的目录
dir /tmp/6379
#绑定地址
bind 0.0.0.0
#让redis后台运行
daemonize yes
#注册的实例ip
replic-announce-ip 192.168.99.100
#保护模式
protected-mode no
#数据库数量1
databases 1
#日志
logfile /tmp/6379/run.log
拷贝文件到每个目录
cd /tmp
echo 7001 7002 7003 8001 8002 8003 |xargs -t -n 1 cp redis.conf
修改每个目录下的redis.conf。将其中的6379修改为与所在目录一致
cd /tmp
printf '%s\n' 7001 7002 7003 8001 8002 8003 | xargs -I{} -t sed -i 's/6379/{}/g' {}/redis.conf