Redis 在Window下集群部署

转自 http://blog.****.net/qiuyufeng/article/details/70474001

     本文主要介绍在 window下如何搭建 Redis集群,三个主节点,三个从节点,多主节点为了分布集群,从节点是为了高可用性。


一  下载window版本的redis

         下载地址   https://github.com/MSOpenTech/redis/releases

    Redis 在Window下集群部署

二  解压复制

         把 redis 解压后,再复制出 5 份,配置 三主三从集群。 由于 redis 默认端口号为 6379,那么其它5份的端口可以为6380,6381,6382,6383,6384。 并且把目录使用端口号命名, 如下:

      Redis 在Window下集群部署



三 配置Redis

      打开目录6379下有一个文件 redis.windows.conf,修改里面的端口号,以及集群支持配置。

Redis 在Window下集群部署
     
     
     修改支持集群
    
     cluster-enabled yes
     cluster-config-file nodes-6379.conf
     cluster-node-timeout 5000
     appendonly yes

     Redis 在Window下集群部署

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

       编写一个 bat 来启动 redis,在每个节点目录下建立  start.bat , 内容如下:

     

      title redis-6380

      redis-server.exe redis.windows.conf

       

四 安装Ruby

     由于 Redis 的集群使用  ruby脚本编写,所以系统需要有 Ruby 环境。 百度下 rubyinstaller-2.3.3-x64.exe, 并下载安装。
    
     Redis 在Window下集群部署
    Redis 在Window下集群部署

五 下载集群脚本redis-trib

    下载地址   https://raw.githubusercontent.com/antirez/redis/unstable/src/redis-trib.rb, 

    Redis 在Window下集群部署


     集群的命令为 

    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


   如果此时在cmd上执行该命令,那么会出现如下错误:

    Redis 在Window下集群部署

  

   是因为缺少 ruby 的一些模块,需要参考后面的安装处理。


六 下载rubygems

    下载地址 https://rubygems.org/pages/download, 下载后解压,然后在命令行执行  ruby setup.rb, 当前目录切换到解压目录中,如 D:\Program Files\Redis-x64-3.2.100\rubygems-2.6.11


Redis 在Window下集群部署

    

    Redis 在Window下集群部署


七 GEM 安装 Redis

        如果此时再运行集群创建脚本  redis-trib.rb , 那么依然还是有如下错误:

       Redis 在Window下集群部署

    
   需要在命令行中,执行 gem install redis。

  Redis 在Window下集群部署
       
  

八  启动每个节点并且执行集群构建脚本

      把每个节点下的 start.bat双击启动, 在命令行中执行   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

       如果出现如下超时错误,那么要修改下  cluster-node-timeout 5000。

  Redis 在Window下集群部署

       如果出现以下错误,那么把每个节点服务目录下 nodes-端口号.conf文件删除,如nodes-6379.conf, 并且重启每个服务后,再创建集群。


   Redis 在Window下集群部署
    

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


   Redis 在Window下集群部署

注意:http://blog.****.net/yong472727322/article/details/69396359

http://blog.****.net/wudalang_gd/article/details/52153571

http://blog.****.net/h363659487/article/details/78793284