近期在公司部署redis集群,也是参考了好多资料 踩了很多坑。故记录一下,帮助有需要的人,开始正文。

一.下载安装redis

下载地址:https://github.com/MSOpenTech/redis/releases
Redis 支持 32 位和 64 位。这个需要根据你系统平台的实际情况选择,这里我们下载 Redis-x64-xxx.zip 解压后,将文件夹重新命名为 redis,。
然后进入刚刚安装完的 redis文件夹 按住shift 右键空白处 选择 在此处打开命令窗口;接着在命令行输入 redis-server.exe redis.windows.conf,运行效果如下图:

安装redis cluster 6集群 windows安装redis集群_redis

二.集群前戏配置

新建一个文件夹 redis-cluster(自己随便建,最好不要中文),我们打算建立三个节点的集群(3主+3从),所以redis文件复制6份到 redis-cluster 文件夹中,redis默认端口号6379,我们将这6份复制来的redis文件夹分别改名为 6379 6380 6381 6382 6383 6384,我们要用这几个端口。如图:

安装redis cluster 6集群 windows安装redis集群_redis_02

然后打开6379文件夹下的 redis.windows.conf,修改端口号(6380、6381等改成自己对应的端口号),如图:

安装redis cluster 6集群 windows安装redis集群_集群_03

接着修改以下集群配置信息:
 cluster-enabled yes
 cluster-config-file nodes-6379.conf
 cluster-node-timeout 15000
 appendonly yes
 如果cluster-enabled 不为yes, 那么在使用JedisCluster集群代码获取的时候,会报错。
 cluster-node-timeout 调整为15000,那么在创建集群的时候,不会超时。 
 cluster-config-file nodes-6379.conf 是为该节点的配置信息,这里使用 nodes-端口.conf命名方法。服务启动后会在目录生成该文件。

安装redis cluster 6集群 windows安装redis集群_集群_04


安装redis cluster 6集群 windows安装redis集群_集群_05

编写一个 bat 来启动 redis,在每个节点目录下建立 startup.bat,内容如下:
  title redis_8081
  redis-server.exe redis.windows.conf

title是cmd窗口名 根据个人爱好输入.

三.Ruby安装

redis的集群使用 ruby脚本编写,所以系统需要有 Ruby 环境 ,下载地址就不po了,百度一下你懂得。

安装redis cluster 6集群 windows安装redis集群_redis_06

安装时三个都选上

四. 安装Redis的Ruby驱动redis-xx.gem

下载地址 https://rubygems.org/pages/download
 下载后解压,当前目录切换到解压目录中,如 D:\tools\rubygems-2.6.12 然后在命令行执行  
             ruby setup.rb。
 然后GEM 安装 Redis :切换到redis安装目录,需要在命令行中,执行 
             gem install redis

    ***这时可能或出现以下错误(划重点):***
    1.连接超时(TimeOut):
   解决办法如下 命令窗口输入:
   gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/
   gem sources -l
   *** CURRENT SOURCES ***

   https://gems.ruby-china.org
   # 请确保只有 gems.ruby-china.org
    gem install redis
   2.若设置 source时出现https://gems.ruby-china.org/ is not a url:
   可以去配置文件修改,位置在 c:/User/用户名/.gemrc

打开文件修改source,如下:

安装redis cluster 6集群 windows安装redis集群_redis_07


保存,然后 cmd 窗口输入 gem sources -l,效果如下:

安装redis cluster 6集群 windows安装redis集群_ruby_08

卧槽 什么 还是gem install redis 失败????
手动下载,地址:https://rubygems.global.ssl.fastly.net/gems/redis-3.2.2.gem
命令窗口到这个文件的下载目录,执行:
gem install -l ./redis-3.2.2.gem
ok gem终于安装上了redis(滑稽)

五.安装集群脚本redis-trib

下载地址 https://raw.githubusercontent.com/antirez/redis/unstable/src/redis-trib.rb
打开该链接如果没有下载,而是打开一个页面,那么将该页面ctrl+A全选,ctrl+c ,保存为redis-trib.rb,建议保存到一个Redis的目录下。

六.启动每个节点,执行集群构建脚本

双击每个节点下的 startup.bat, 到redis文件夹中打开命令窗口(比如进入6379文件夹),输入以下指令:
  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。
master节点(主节点)不能少于3个,所以我们用了6个redis(3主+3从)

安装redis cluster 6集群 windows安装redis集群_安装redis cluster 6集群_09

在出现 Can I set the above configuration? (type ‘yes’ to accept): 请确定并输入 yes 。成功后的结果如下:

安装redis cluster 6集群 windows安装redis集群_windows_10

七.测试集群

控制窗口进入到redis文件下,比如我们进入6380文件下,输入:
redis-cli -c -h 127.0.0.1 -p 6380

(命令 redis-cli –c –h ”地址” –p “端口号” ; c 表示集群),效果如下:

安装redis cluster 6集群 windows安装redis集群_ruby_11


然后输入cluster info,如图:

安装redis cluster 6集群 windows安装redis集群_redis_12


查看集群具体节点信息,输入cluster nodes :

安装redis cluster 6集群 windows安装redis集群_redis_13

集群成功!

输入一条数据来测试,如下图在主节点6380中set了一个字符串:

安装redis cluster 6集群 windows安装redis集群_集群_14


输入 info replication,看6380的主从关系,如图 6380的从节点为6384:

安装redis cluster 6集群 windows安装redis集群_redis_15


去6384看keys:

安装redis cluster 6集群 windows安装redis集群_windows_16


ok,主从同步,集群完成。就写到这里了 希望能给需要的人一些帮助