redis-cluster集群-三主三从搭建

23 篇文章 0 订阅

总体描述

搭建三主三从,即三组一主一从。组内是主从关系,可以实现高可用;组间是集群关系,实现分工存储。
准备六个节点ip:
192.168.192.131:9001,
192.168.192.131:9002,
192.168.192.131:9003,
192.168.192.131:9004,
192.168.192.131:9005,
192.168.192.131:9006,
这六个中三个master,三个slave,并且具有主从关系

环境的搭建

第一步:创建六个文件夹
因为下面配置文件中的–dir设置的是data所以还需要在六个文件夹中创建data文件夹

mkdir -p 9001/data 9002/data 9003/data 9004/data 9005/data 9006/data

第二步:先复制一个配置文件,修改后在复制到其他文件夹

cp /redis-4.0.6/redis.conf 9001 #复制redis.conf到9001

修改配置文件

#取消注释,否则远程连接不上
#bind 127.0.0.1
# 将yes改为no,否则远程连接不上
protected-mode no 
#端口
port 1001
 #守护进程模式
daemonize yes
#修改pidfile指向路径
pidfile "/var/run/redis_9001.pid" 
#修改日志的路径
logfile "自己的路径/redis-4.0.6/redis-cluster/9001/log/redis.log" 
#工作目录 ./当前目录也行,要是data还需要新建data文件
dir "自己的路径/redis-4.0.6/redis-cluster/1001/data" 
#开启集群配置
cluster-enabled yes 
#集群配置文件
cluster-config-file nodes-1001.conf 
#过期时间15s,单位是毫秒
cluster-node-timeout 15000 
#关键,要不当集群中其中一个主节点宕机后,会导致整个集群不可以。
cluster-require-full-coverage no 
#设置访问密码
requirepass testcluster123 
#每台节点都配置了密码,如果masterauth没有配置,就会造成主从节点不能切换
masterauth testcluster123 

第三步:将9001文件夹中的redis.conf配置文件复制到其他文件夹,在原来基础上,只需要更改以下配置即可

cp 9001/redis.conf 900X

复制到其他文件夹后,需要更改配置文件中的内容

port 900x
pidfile "/var/run/redis_900x.pid" 
logfile "自己的文件/redis-4.0.6/redis-cluster/900x/log/redis.log"
dir "自己的文件/redis-4.0.6/redis-cluster/900x/data"
cluster-config-file nodes-100x.conf
mkdir 9001/data

第四步:运行redis,每个配置文件

cd redis-4.0.6/src
redis-server /root/redis-4.0.6/redis_cluster/900X/redis.conf

第五步:集群的创建
1.版本5.0以后执行如下命令:
其中 cluster-replicas 1 代表 一个master后有几个slave,1代表为1个slave节点 ; -a 密码

redis-cli --cluster create ip:9001 ip:9002 127.0.0.1:9003 ip:9004 ip:9005 ip:9006 --cluster-replicas 1 -a testcluster123

2、5.0之前的版本使用redis-trib.rb
安装ruby,使用redis-trib.rb命令

yum install centos-release-scl-rh
yum install rh-ruby23  -y
scl  enable  rh-ruby23 bash
gem install redis

修改redis-trib.rb脚本:在redis-4.0.6的src下

将
@r = Redis.new(:host => @info[:host], :port => @info[:port], :timeout => 60)
改为:
@r = Redis.new(:host => @info[:host], :port => @info[:port], :timeout => 60, :password => "你的密码")

在src文件夹下执行如下命令

./redis-trib.rb create --replicas 1 ip:9001 ip:9002 ip:9003 ip:9004 ip:9005 ip:9006

效果如下图所示
在这里插入图片描述出现下图的绿色ok表示成功
在这里插入图片描述

环境的测试

输入以下命令且必须使用 -c

redis-cli -c -p 9001 -a testcluster123

在这里插入图片描述如图发现set数据时,数据自动分配到9002节点,连接也转移到9002 节点

查看节点信息
在这里插入图片描述模拟9001宕机,9004由从机变为主机
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值