在Windows下创建redis cluster集群

https://www.cnblogs.com/tommy-huang/p/6240083.html
博客主里面的步骤真的很详细了,按步就班的来就没有任何问题
下面我就说说在此过程中自己不懂的和又添加的

conf文件复制

在此

port 6380       #端口号
loglevel notice    #日志的记录级别,notice是适合生产环境的
logfile "Logs/redis6380_log.txt"   #指定log的保持路径,默认是创建在Redis安装目录下,如果有子目录需要手动创建,如此处的Logs目录
syslog-enabled yes                         #是否使用系统日志
syslog-ident redis6380                   #在系统日志的标识名
appendonly yes                              #数据的保存为aof格式
appendfilename "appendonly.6380.aof"    #数据保存文件
cluster-enabled yes                       #是否开启集群
cluster-config-file nodes.6380.conf		#集群节点配置文件
cluster-node-timeout 15000  		 # 集群连接超时时间
cluster-slave-validity-factor 10
cluster-migration-barrier 1
cluster-require-full-coverage yes

最后三个没有解释:下面解释一下

  1. cluster-slave-validity-factor 10:在进行故障转移的时候全部slave都会请求申请为master,但是有些slave可能与master断开连接一段时间了导致数据过于陈旧,不应该被提升为master。该参数就是用来判断slave节点与master断线的时间是否过长。判断方法是:比较slave断开连接的时间和(node-timeout * slave-validity-factor)+ repl-ping-slave-period如果节点超时时间为三十秒, 并且slave-validity-factor为10,假设默认的repl-ping-slave-period是10秒,即如果超过310秒slave将不会尝试进行故障转移
  2. cluster-migration-barrier 1:#master的slave数量大于该值,slave才能迁移到其他孤立master上,如这个参数被设为2,那么只有当一个主节点拥有2个可工作的从节点时,它的一个从节点才会尝试迁移。
  3. cluster-require-full-coverage yes:#集群全部的slot有节点负责,集群状态才为ok并提供服务。设置为no可以在slot没有全部分配的时候提供服务。不建议打开该配置,这样会造成分区的时候,小分区的master一直在接受写请求,而造成很长时间数据不一致。

在把集群里的服务注册到本地服务的命令

一看有点懵逼,难道可以先注册,再conf改服务名,后来我想错了,只是全打而已,不过我还是用的我前面注册redis服务命令那一套

在这里插入图片描述

创建集群的命令

redis-trib.rb create --replicas 0 127.0.0.1:6383 127.0.0.1:6384 127.0.0.1:6385 

而最新版本5.x版本换成(这几天才知道)

redis-cli  --cluster create  127.0.0.1:6383 127.0.0.1:6384 127.0.0.1:6385 

这我端口用的和博客主不一样,大家应该能看懂
redis-trib.rb 程序的命令是 create , 这表示我们希望创建一个新的集群
replicas 0,这代表的是不创建从节(Slave),只把后面的端口创建成主节点(Master),如果改成1,就是希望每个主节点(Master)都有一个从节点(Slave),从后面的端口从选出谁是主节点谁是从节点,之后会打印出一份预想的配置出来,如果你觉得没问题的话, 就可以输入 yes , redis-trib 就会将这份配置应用到集群当中,可以指定Slave在某个Master下,现在先不涉猎

在集群已经有的情况下添加主(从)节点

在比如上面这种只有三个主节点,想再这三个的基础上添加从节点,不可能都删除重新创建吧,那也太low了
https://www.cnblogs.com/yanwei-wang/p/5527453.html
这篇博客有你需要的增加主节点,哈希槽的分配问题,增加从节点,删除节点等。
下面我演示添加从节点

先删除以前主从的redis服务(6380,6381,6382),把这些配置成redis cluster的Slave

我用sc delete "服务名"没办法删除redis6380等服务,无法访问,就用的redis自带的删除服务

redis-server --service-uninstall --service-name  "服务名"

在这里插入图片描述
这就算删除成功了
警告这是删除单个redis缓存的,和集群没关系,如果要删除集群的节点,请参考上面那篇博客,要不会出问题的

给集群的那三个主节点(6383,6384,6385)配置从节点

先查询已配置的主节点的详细信息,因为配置从节点需要他们的id

CLUSTER NODES 列出集群当前已知的所有节点(node),以及这些节点的相关信息

在这里插入图片描述
可以看看代表什么信息

IDIP:端口Master/Slave哈希值
26492edbfbd6158f0d43f992fdbe737ab84266ee127.0.0.1:6383master0-5460
e8a79b4548757a54b5ff02f737e50df9a35b43f1127.0.0.1:6384master5461-10922
2ef57108a9b9ba6fb46826049aab6cd704a43e05127.0.0.1:6385master10923-16383

哈希值为什么这么分配我就不说了
开始配置6380,6381,6382的配置文件,和主节点的步骤一样,到在本地服务启动就停止,下面的步骤就不一样了
在这里插入图片描述

redis-trib.rb add-node --slave --master-id   主节点的ID    从节点IP:端口    主节点的IP:端口

这三个从节点都是执行,添加节点的博客说主节点的IP:端口可以是任何集群里的主节点的IP:端口,因为初学者,我还是把最后的主节点的IP:端口写的是前面ID的,这样可以更保险些,但是我不是说它的就是错的,大家可以试试
在这里插入图片描述
查询redis集群的详细信息,出现这些说明你配置成功了
再次提醒这是添加从节点,不用担心哈希槽的问题,如果添加或者删除主节点,一定要想到哈希槽的分配问题,要不就会要不添加的主节点没用到(添加主节点),要不就会使存在集群里的数据丢失(删除主节点)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
windows环境下redis集群的搭建,搭建频繁如下: redis集群测试 01、安装Redis 02、创建6个目录Redis7001、Redis7002、Redis7003、Redis7004、Redis7005、Redis7006 03、把Redis目录下的redis.windows.conf文件分别复制到上创建创建的6个文件夹中 04、修改6个文件夹中的redis.windows.conf文件 a、修改端口,分别对应 700* b、绑定IP,这里使用的是一台电脑,都设置为127.0.0.1 c、指定数据文件(appendonly.aof)的存放位置,dir C:/MySoftPath/Java/Redis/Redis700*/ d、开启集群模式,cluster-enabled yes e、集群文件配制信息(不用设置路径,自动在对应的700*下面),cluster-config-file nodes-700*.conf f、超时时间,cluster-node-timeout 5000 g、开启aof模式,appendonly yes h、数据文件名称,appendfilename "appendonly.aof" 05、启动这6个redis 06、安装ruby环境(rubyinstaller-2.2.4-x64.exe),注意(安装所有模块),后台需要使用此环境。 07、下载ruby环境下Redis的驱动“redis-3.2.2.gem”。 08、把“redis-3.2.2.gem”放到ruby环境下进行驱动,在所在的目录运行【gem install --local redis-3.2.2.gem】 09、把redis-trib.rb集群工具放在redis目录下,使用此工具创建集群 10、创建Redis集群redis-trib.rb create --replicas 0 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 127.0.0.1:7006】 11、注意,如果第10步没有反应也不报错,在redis-trib.rb命令前面使用ruby 【ruby redis-trib.rb create --replicas.........】 12、最后配上别人的博客【http://www.cnblogs.com/tommy-huang/p/6240083.html】 。。。。。。。。。。。。。。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值