欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Redis集群搭建~Redis-x64-3.2.100版本

程序员文章站 2022-09-27 15:32:42
参考文档: https://www.cnblogs.com/yaopengfei/p/12418227.html https://blog.csdn.net/weixin_42694286/article/details/92974535 https://blog.csdn.net/qq_42815 ......

参考文档:

https://www.cnblogs.com/yaopengfei/p/12418227.html

https://blog.csdn.net/weixin_42694286/article/details/92974535

https://blog.csdn.net/qq_42815754/article/details/82912130

https://blog.csdn.net/u010963948/article/details/78963572

 

1,配置redis服务

下载zip格式redis-x64-3.2.100版本、解压到 d盘根目录,然后复制 6 个配置文件,分别为:6279 ~ 6384
下载目录:https://github.com/msopentech/redis/releases/

Redis集群搭建~Redis-x64-3.2.100版本

主要配置文件中的内容如下:以【redis.windows-service6379.conf】为例,其他几个文件同样如此修改,然后6379端口号也要修改为相对应的数字

       bind 192.***.**.**                                           #ip改为服务器对应ip

  port 6379                                                       #端口号

  appendonly yes                                             #数据的保存为aof格式

  appendfilename "appendonly.6379.aof"        #数据保存文件

  cluster-enabled yes                                        #是否开启集群

  cluster-config-file nodes.6379.conf                #集群节点配置文件

  cluster-node-timeout 15000                           #集群节点的超时时间

  cluster-slave-validity-factor 10                       #校验从节点是否可以进行主从复制,校验10次

  cluster-migration-barrier 1                              #配置数据转移

  cluster-require-full-coverage yes                    #主从节点全量复制

       protected-mode no                                         #默认开启,需要暂时关闭,不然下边无法配置集群,配置完成后再开启

全部修改之后,进行安装服务操作,打开cmd, 切换到redis目录下,分别执行以下命令进行服务安装:

d:\redis-x64-3.2.100_cluster\redis-server.exe --service-install d:\redis-x64-3.2.100_cluster\redis.windows-service6379.conf --service-name redisservice6379

d:\redis-x64-3.2.100_cluster\redis-server.exe --service-install d:\redis-x64-3.2.100_cluster\redis.windows-service6380.conf --service-name redisservice6380

d:\redis-x64-3.2.100_cluster\redis-server.exe --service-install d:\redis-x64-3.2.100_cluster\redis.windows-service6381.conf --service-name redisservice6381

d:\redis-x64-3.2.100_cluster\redis-server.exe --service-install d:\redis-x64-3.2.100_cluster\redis.windows-service6382.conf --service-name redisservice6382

d:\redis-x64-3.2.100_cluster\redis-server.exe --service-install d:\redis-x64-3.2.100_cluster\redis.windows-service6383.conf --service-name redisservice6383

d:\redis-x64-3.2.100_cluster\redis-server.exe --service-install d:\redis-x64-3.2.100_cluster\redis.windows-service6384.conf --service-name redisservice6384

安装完成以后,打开服务,会看到以下几个服务,然后全部启动它们

Redis集群搭建~Redis-x64-3.2.100版本

 启动之后,你会在设置的持续化目录下看到生成了12个文件,我的持续化目录设置在data文件路径下了(默认在根目录下)

Redis集群搭建~Redis-x64-3.2.100版本

 

2,安装ruby运行环境 

下载ruby运行环境文件:http://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.2.4-x64.exe       

安装时,注意勾选后两个,让其自动配置环境变量,最终安装在这个这个文件夹中【ruby22-x64】

Redis集群搭建~Redis-x64-3.2.100版本

 

3,下载ruby环境下redis驱动

下载路径: https://rubygems.org/gems/redis/versions/3.2.2    考虑到兼容性,这里下载的是3.2.2版本

 Redis集群搭建~Redis-x64-3.2.100版本

然后将下载的文件:redis-3.2.2.gem  复制 到 ruby运行环境 的安装目录下

Redis集群搭建~Redis-x64-3.2.100版本

打开cmd,切换到ruby运行环境的安装目录下,我的安装目录在:c:\ruby22-x64

Redis集群搭建~Redis-x64-3.2.100版本

然后执行命令:gem install --local c:\ruby22-x64\redis-3.2.2.gem

Redis集群搭建~Redis-x64-3.2.100版本

 

4,下载redis集群工具 redis-trib.rb

下载路径如下:https://github.com/beebol/redis-trib.rb     下载后解压文件,建议将文件放到 redis 的根目录下

Redis集群搭建~Redis-x64-3.2.100版本

打开cmd, 切换到redis目录下,执行命令:

ruby redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384

这里的 replicas 1,1代表1个master对应1个slave,改为2,则代表1个master对应2个slave

注意:127.0.0.1 是你的配置文件中绑定的ip,如果你配置文件中的 bind 不是127.0.0.1,命令里也要跟着换

如果你遇到下边的错误,参考文档 :https://blog.csdn.net/maoyuanming0806/article/details/103171182

Redis集群搭建~Redis-x64-3.2.100版本

我的报错原因是设置密码了, 解决办法:就是先注释掉密码,等集群全部配置完成之后,再重新开启密码。

可以参考文档:https://blog.csdn.net/xufei512/article/details/82758676

解决一切路障之后,成功的安装驱动:

Redis集群搭建~Redis-x64-3.2.100版本

Redis集群搭建~Redis-x64-3.2.100版本

 

5,redis集群密码设置

1,如果是使用redis-trib.rb工具构建集群,集群构建完成前不要配置密码,集群构建完毕再通过config set + config rewrite命令逐个机器设置密码

2,如果对集群设置密码,那么requirepass和masterauth都需要设置,否则发生主从切换时,就会遇到授权问题

3,各个节点的密码都必须一致,否则redirected就会失败 

 

6,测试

使用客户端连接redis集群,你会发现只有 db0 这1个数据库,如下图所示:

Redis集群搭建~Redis-x64-3.2.100版本

原因:参考文档:https://blog.csdn.net/yaomingyang/article/details/79094869

1,redis在单机模式下redis.conf配置文件中默认的数据库数量是16个

2,在集群模式下这个配置是不起作用的,集群客户端是不支持多数据库db的,只有一个数据库默认是select 0

Redis集群搭建~Redis-x64-3.2.100版本

3,集群slave从节点默认是不支持读写操作的,但是在执行过readonly命令后可以执行读操作

接下来:在6379这个端口增加一个set 命令

Redis集群搭建~Redis-x64-3.2.100版本

你会发现其他5个所有都会同步增加

Redis集群搭建~Redis-x64-3.2.100版本