我是参照这两篇教程进行的操作:   1.https://www.cnblogs.com/weiqinl/p/6490372.html   (主)

                2.https://blog.csdn.net/qiuyufeng/article/details/70474001

                3.http://www.cnblogs.com/007sx/p/8108895.html

以下主要记录的是,自己在实际操作中踩得坑:

1.下载解压redis,并复制出另外5份,都统一放在redis文件夹下,并将他们的文件夹分别命名为6379  6380  6381  6382  6383  6384(对应各自的端口号);

             

2.分别修改配置文件(6个都得改)redis.windows.conf,修改里面的端口号,以及集群支持配置。

    port 6379(分别为各自端口号6379-6384,与文件夹命名一致) 

    bind 0.0.0.0                                                                                    (初始为:127.0.0.1,这样外部网络是连不了的,会报错:redis connection refused: connect)

    protected-mode no                     (原本参数值为:yes,这样外部网络也是连不了的,会报错:redis connection refused: connect)

    cluster-enabled yes                    (设置为支持集群配置,如果  cluster-enabled 不为yes, 那么在使用JedisCluster集群代码获取的时候,会报错。)

    cluster-node-timeout  5000                 (cluster-node-timeout 调整为  5000,那么在创建集群的时候,不会超时。)

    appendonly  yes                     

    

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

title redis-6380                                  (对应各自端口号6379-6384)

redis-server.exe redis.windows.conf

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

  安装在redis目录下

     
5.下载集群脚本redis-trib
  (如果点开下载不了,则新建一个空的redis-trib.rb文件(注意文件类型后缀),然后将页面中的内容全选复制进去,同样保存在redis目录下)
 
  在redis目录下,按住shift键并点击鼠标右键,选择在此处打开命令窗口(或者自己在cmd中切换目录也可以)运行如下命令:
  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
  (注意此处有坑:若需要外网访问,则必须将127.0.0.1改为IP地址,否则运行java项目时会报错:clusterdown hash slot not served)

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

   

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

6.下载rubygems.

  下载地址 https://rubygems.org/pages/download, 下载后解压,然后在在此安装目录下,执行命令  ruby setup.rb

 
7.gem安装redis

          (如果此时再运行集群创建脚本  redis-trib.rb , 那么依然还是有上图错误)
    
     需要在命令行中,执行 gem install redis。
 
  
 
 
8.启动每个节点,并执行集群构建脚本
    把每个节点下的 start.bat双击启动, 在命令行中执行第5步中的命令   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
    (注意此处有坑:若需要外网访问,则必须将127.0.0.1改为IP地址,否则运行java项目时会报错:clusterdown hash slot not served)
 
    在出现 Can I set the above configuration? (type 'yes' to accept):   请确定并输入 yes 。成功后的结果如下(此时集群已搭建成功):
    

9.设置密码

  如果需要外网访问,则需要开放端口,但为了防止redis被攻击,可以加上密码。 如需加上密码,则在第2步的配置文件中加上这行代码(6个都得加) :

  requirepass  yourpassword

  此时需要关掉6个redis服务,然后重新运行这6个redis服务(双击第3步中建立的脚本)。构建集群的脚本不需要再次运行

windows下的redis集群搭建的艰辛历程的更多相关文章

  1. windows下配置redis集群,启动节点报错:createing server TCP listening socket *:7000:listen:Unknown error

    windows下配置redis集群,启动节点报错:createing server TCP listening socket *:7000:listen:Unknown error 学习了:https ...

  2. windows下安装redis集群

    前几天在自己在本机win10 电脑下部署了redis集群. 主要通过的是网上两个博客: 如何在windows下部署redis集群:https://blog.csdn.net/zsg88/article ...

  3. windows下zookeeper伪集群搭建

    下载 http://www.apache.org/dyn/closer.cgi/zookeeper/ 解压 D:\Java\soft\zookeeper-3.4.6 伪集群 1.在 \zookeepe ...

  4. 在windows下面配置redis集群遇到的一些坑

    最近工作不忙,就决定学习一下redis.因为一直在windows下工作,不会linux,没办法就选择在windows下配置redis. windows下配置redis集群的文章有很多,比如:http: ...

  5. Linux Redis集群搭建与集群客户端实现(Python)

    硬件环境 本文适用的硬件环境如下 Linux版本:CentOS release 6.7 (Final) Redis版本: Redis已经成功安装,安装路径为/home/idata/yangfan/lo ...

  6. Linux Redis集群搭建与集群客户端实现

    硬件环境 本文适用的硬件环境如下 Linux版本:CentOS release 6.7 (Final) Redis版本: Redis已经成功安装,安装路径为/home/idata/yangfan/lo ...

  7. Redis 集群搭建详细指南

    先有鸡还是先有蛋? 最近有朋友问了一个问题,说毕业后去大城市还是小城市?去大公司还是小公司?我的回答都是大城市!大公司! 为什么这么说呢,你想一下,无论女孩男孩找朋友都喜欢找个子高胸大的.同样的道理嘛 ...

  8. 二、redis集群搭建

    redis集群搭建 redis3.0后支持集群.集群中应该至少有三个节点,每个节点有一备份节点.需要6台服务器.搭建伪分布式,需要6个redis实例.搭建集群的步骤: 一.安装单机版redis 第一步 ...

  9. redis集群搭建及注意事项

    上一篇:redis的安装及注意事项 这里,在一个Linux虚拟机上搭建6个节点的redis伪集群,思路很简单,一台虚拟机上开启6个redis实例,每个redis实例有自己的端口.这样的话,相当于模拟出 ...

随机推荐

  1. Softmax && Cross-entropy Error

    softmax 函数,被称为 归一化指数函数,是sigmoid函数的推广. 它将向量等比压缩到[0, 1]之间,所有元素和为1. 图解: Example: softmax([1, 2, 3, 4, 1 ...

  2. 假期训练五(poj-1077bfs+康拓展开,hdu-2577dp)

    题目一:传送门 思路:主要是找到状态, 考虑字母有两种状态,大写和小写, 从小写变为大写的变化方式有两种:保持cap状态,或者按住shift键: 从小写变为大写也有一种变化方式:按住shift键: 看 ...

  3. Java数组的初始化

    1.动态初始化 数据类型 [] 变量名 = new 数据类型 [数组大小]; //数组的动态初始化 int [] arr = new int [3]; 2.静态初始化 数据类型 [] 变量名 = {元 ...

  4. js中对象继承的冒充方法

    function Parent(name){ this.name = name; this.sayName = function(){ console.log(this.name); } } func ...

  5. tp5,thinkphp5,隐藏index.php,隐藏入口文件

    一.找到/public/.htaccess文件 Apache: <IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews R ...

  6. Arria10 SDI II学习笔记

    12G-SDI16是什么意思? 关于 int_vpid_byte1 int_vpid_byte2 int_vpid_byte3 int_vpid_byte4 这些参数是不是如果外部数据有就不需要传输, ...

  7. DataGuard 配置须知

    风不停,绿树荫,阳光晃眼,天真蓝,我们在奔跑,沿着斜阳,是你喘息,起伏不停...  ——朴树 1.确认primary库处于归档模式 命令:archive log list; 如果没有启用归档,请先将数 ...

  8. wx.setStorageSync(KEY,DATA)

    wx.setStorageSync 每个微信小程序都可以有自己的本地缓存,可以通过wx.setStorage(wx.setStorageSync).wx.getStorage(wx.getStorag ...

  9. css3实现卡牌旋转与物体发光效果

    效果演示 http://demo.qpdiy.com/hxw/CSS3/rotate+light.html 物体旋转: 卡牌同一位置放2张图片,通过设置3D动画旋转实现 animation: card ...

  10. (简单广搜) Ice Cave -- codeforces -- 540C

    http://codeforces.com/problemset/problem/540/C You play a computer game. Your character stands on so ...