环境以及引用资料

1.windows server 2008 r2 enterprise  (木有办法,公司的服务器全是如此,就这种环境搭建吧)

2.redis官方资料下载: https://redis.io/download

3.redis官方没有提供相关的程序包,但是Microsoft Open Tech group提供并维护了相关的redis安装包 https://github.com/MSOpenTech/redis(只是提供64位程序)

这里说一句,很多公司的redis都是部署在linux上的,我这里只是针对需要在window环境下搭建redis集群做安装部署。

安装包下载

1.Redis 3.2 Release 版本.msi

  安装成功后,这里安装的是单个redis服务。找到安装路径,当前机器安装在:D:\Redis

  以管理员打开控制台,将redis-cli.exe拖入其中,回车,惊喜的看到,我安装成功了,安装部成功的伙伴们自己去找问题吧。简单的加几个数据

  Set a test

  get a

  如下图,都成功了。

2.Ruby环境

安装此环境的原因是因为我们需要使用Ruby Gems 中的redis-trib.rb来创建和操作集群。

3.Ruby Gems

通过此Ruby包管理来获取操作Redis集群的redis-trib.rb

3.1 解压安装包后,点击setup.rb安装。

3.2 首先,为了防止被墙,我们需要把镜像指向新的地址,打开一个控制台

gem sources --remove https://rubygems.org/ 删掉原来的源
gem sources -a http://gems.ruby-china.org/ 添加新源
gem sources -l 查看现有的源
gem install redis 安装redis依赖

集群搭建

通过上述步骤,搭建了一个Redis服务,在服务管理器中也可以看到此服务。(注意服务器端口),同时我们也搭建了配置redis集群的ruby环境。下面就是讲述如何搭建redis集群。

在官方cluster文档中,最小集群需要至少包含三个主节点。对于您的第一次测试,强烈建议启动具有三个主站和三个从站的六个节点群集。

我的集群式在此服务器中搭建3个master+3个Slave,总共6个节点。关于数据发布的问题,后续对redis研究深入的时候,再写文章记录分享下。

开始时候,我们安装了一个redis实例,默认端口是6379,准备新创建的6个节点分别是 6380,6381,6382,6383,6384,6385,然后将下载下来的压缩包文件都放进去,这样我们就创建了6个节点,下面就是分别对各个节点进行配置。

在每一个文件夹添加配置文件 redis.conf ,将配置修改为以下

port 7005
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes

然后开启redis服务,具体开启控制台,在当前文件夹执行

redis-server.exe redis.conf

  所有服务开启成功后如下,到此时,我们在单台服务器上创建了6+1个redis实例(开始安装的时候创建了一个redis实体)

后续部署不可能用控制台来host服务,下面介绍如何用把redis部署到服务当中,在控制台分别执行以下命令,请伙伴们注意你的服务名称要按照自己的需求修改。我这里直接Redis+端口来创建了

redis-server --service-install redis.conf --service-name redis6380

创建成功后我们看到数据库里面有6个服务  ,把服务启动起来,有空的话,可以用控制台去看看对应服务是否可以正常添加删除数据。

节点都创建好了,那么下面的工作就是如何来创建集群了。

创建集群时候,我们用到了redis-trib.rb文件

文件在下载下来的redis包里可能是没有的,可以到
https://github.com/antirez/redis/tree/unstable/src 目录下下载
之前的ruby环境就是为运行这个文件做准备的

输入创建集群命令,注意,这个时候要检查下服务器当前的端口6380-6385是否已经打开,没有打开的话创建会失败的。

D:\RedisCluster\6380>redis-trib.rb create --replicas 1 192.168.123.90:6380 192.168
.123.90:6381 192.168.123.90:6382 192.168.123.90:6383 192.168.123.90:6384 192.168
.123.90:6385

  集群环境搭建好后,会出现如下界面,3master+3slave,同时我们每个节点会找到nodes.conf,这里记录了节点在集群中的一些信息,有兴趣可以去分析下。

输入yes就行了

创建成功了,16384个槽位都被覆盖了,这里简单说下redis的原理,对key 做 CRC16 校验和后,按照槽位分配在不同的服务器上。在上述信息上,我们可以清楚的看到数据分布在那台服务器上。

最后,我们简单的来测试下数据的增加和获取吧。

老样子,在cmd窗口用redis-cli来处理数据,注意命令和非集群相比加了一个-c

redis-cli -h 192.168.123.90 -p 6380 -c  

到了这里,怎么能忘记我们最喜欢的一句话呢:hello,world

可以清晰的看到数据放到6382节点去了,好了,redis cluster在windows下集群搭建就这样了,后续我会把里面使用到的包房后面

Windows 环境搭建Redis集群的更多相关文章

  1. Windows 环境搭建Redis集群(win 64位)

    转: http://blog.csdn.net/zsg88/article/details/73715947 参考:https://www.cnblogs.com/tommy-huang/p/6240 ...

  2. Windows及Linux环境搭建Redis集群

    一.Windows环境搭建Redis集群 参考资料:Windows 环境搭建Redis集群 二.Linux环境搭建Redis集群 参考资料:Redis Cluster的搭建与部署,实现redis的分布 ...

  3. Windows下 搭建redis集群

    Windows下搭建redis集群教程 一,redis集群介绍 Redis cluster(redis集群)是在版本3.0后才支持的架构,和其他集群一样,都是为了解决单台服务器不够用的情况,也防止了主 ...

  4. 在windows上搭建redis集群

    一 所需软件 Redis.Ruby语言运行环境.Redis的Ruby驱动redis-xxxx.gem.创建Redis集群的工具redis-trib.rb 二 安装配置redis redis下载地址   ...

  5. Windows下搭建Redis集群

    Redis集群: 如果部署到多台电脑,就跟普通的集群一样:因为Redis是单线程处理的,多核CPU也只能使用一个核, 所以部署在同一台电脑上,通过运行多个Redis实例组成集群,然后能提高CPU的利用 ...

  6. Redis集群搭建(转自一菲聪天的“Windows下搭建Redis集群”)

    配置Redis参考:http://blog.csdn.net/zsg88/article/details/73715947 使用Ruby配置集群参考:https://www.cnblogs.com/t ...

  7. Redis → Windows下搭建redis集群

    一,redis集群介绍 Redis cluster(redis集群)是在版本3.0后才支持的架构,和其他集群一样,都是为了解决单台服务器不够用的情况,也防止了主服务器宕机无备用服务器,多个节点网络互联 ...

  8. 在windows上搭建redis集群(redis-cluster)

    一 所需软件:Redis.Ruby语言运行环境.Redis的Ruby驱动redis-xxxx.gem.创建Redis集群的工具redis-trib.rb 二 安装配置redis redis下载地址   ...

  9. 在windows上搭建redis集群(redis-cluster)(转载)

    一 所需软件:Redis.Ruby语言运行环境.Redis的Ruby驱动redis-xxxx.gem.创建Redis集群的工具redis-trib.rb 二 安装配置redis  redis下载地址 ...

随机推荐

  1. 使用C语言调用mysql数据库编程实战以及技巧

    今天编写使用C语言调用mysql数据库编程实战以及技巧.为其它IT同行作为參考,当然有错误能够留言,共同学习. 一.mysql数据库的C语言经常使用接口API 1.首先当然是链接数据库mysql_re ...

  2. ise和modelsim联合仿真的一些准备

    首先要在modelsim中编译xilinx的三个库,分别是unisims库,simprims库,和corelib库,其中unisims库全称为(library of united component ...

  3. 【Util】之——cookie

    拿走即用 使用前引入文件:http://files.cnblogs.com/ccto/util-cookie.js 使用方法: //设置cookie CookieUtil.set("name ...

  4. 每日英语:Best Ways to Ramp Up to A Marathon

    For the record number of American runners who completed an official race event last year, the questi ...

  5. 每日英语:Apple's Latest iPhone Puts Focus Back on Fingerprint Security

    Apple's latest product launch could breathe new life into a technology that failed to take hold the ...

  6. dubbo的一些默认变量

    dubbo默认变量表 变量名 描述 默认值 用途 DEFAULT_IO_THREADS 默认IO线程 Math.min(Runtime.getRuntime().availableProcessors ...

  7. [转]一步一步部署SSIS包图解教程

    本文就SQL统计分析SSIS包的部署进行一次详细的部署图解教程,Sql Server Integration Services 提供了非常简单的部署工具,利用这些工具可以方便地将包文件(*.dtsx) ...

  8. pro mvvm 读书笔记

    一.分离关注点 目的是确保每一个模块值有单一的,明确的目的,不需要去负责其他的功能.单一的目的也称为关注点. 1.1依赖 引用程序集对于依赖来说不是必须的.依赖关系可能也存在于一个代码单元要知道另一个 ...

  9. 使用System.IO.Combine(string path1, string path2, string path3)四个参数的重载函数提示`System.IO.Path.Combine(string, string, string, string)' is inaccessible due to its protection level

    今天用Unity5.5.1开发提取Assets目录的模块,使用时采用System.IO.Path.Combine(string, string, string, string)函数进行路径生成 明明是 ...

  10. CenOS6.5下源码安装vim-7.4

    1.[下载] vim-7.4下载地址: ftp://ftp.vim.org/pub/vim/unix/vim-7.4.tar.bz2 2.[解压] tar jxvf vim-7.4.tar.bz2 之 ...