您的位置:首页 > 数据库 > Redis

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

2017-12-12 00:44 639 查看

1. 所需软件

     Redis、Ruby语言运行环境、Redis的Ruby驱动redis-xxxx.gem、创建Redis集群的工具redis-trib.rb

2.安装配置redis 

      下载Redis-x64-3.2.100.zip,这里不作多解析了,自己去官网找。

       把集群规划有三个节点的集群,每个节点有一主一备。理论需要6台虚拟机,实际可以通过不同端口模拟虚拟机,这里就通过端口模拟,搭建 伪集群。

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



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



修改其他配置支持集群

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命名方法。服务启动后会在目录生成该文件。



编写一个 bat 来启动 redis,在每个节点目录下建立 启动脚本,如第一个命名为:redis6379.start.bat,第二个脚本redis6380.start.bat,以此类推,都添加如下内容:

title redis-6380

redis-server.exe redis.windows.conf

这样就可以带配置文件启动一个redis实例,但是这样我们有6个redis实例,所以我们可以再写一个命名为redis.start.bat的总启动脚本来一次性启动刚才每个实例添加的脚本,总脚本内容如下:

start cmd /k  "g: && cd g:\redisCluster\6379 && redis6379.start.bat.bat"

start cmd /k  "g: && cd g:\redisCluster\6380 && redis6380.start.bat.bat"

start cmd /k  "g: && cd g:\redisCluster\6381 && redis6381.start.bat.bat"

start cmd /
4000
k  "g: && cd g:\redisCluster\6382 && redis6381.start.bat.bat"

start cmd /k  "g: && cd g:\redisCluster\6383 && redis6383.start.bat.bat"

start cmd /k  "g: && cd g:\redisCluster\6384 && redis6384.start.bat.bat"

有兴趣的可以百度windows的start或者cmd命令脚本命令。

3.安装Ruby

redis的集群使用  ruby脚本编写,所以系统需要有 Ruby 环境 ,下载地址 http://dl.bintray.com/oneclick/rubyinstaller/:rubyinstaller-2.3.3-x64.exe。 



     安装时3个选项都勾选。

4.安装Redis的Ruby驱动redis-xxxx.gem

   4.1下载地址 https://rubygems.org/pages/download(或者redis源码里也可以找到), 下载后解压,当前目录切换到解压目录中,如 D:\Program Files\redis\rubygems-2.6.12 然后在命令行执行  ruby setup.rb。

   4.2 然后GEM 安装 Redis :切换到redis安装目录,需要在命令行中,执行
gem install redis。



5.安装集群脚本redis-trib

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

       打开该链接如果没有下载,而是打开一个页面,那么将该页面保存为redis-trib.rb,建议保存到一个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。

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

      把每个节点下的 start.bat双击启动, 在切换到redis目录在命令行中执行 :

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

备注:有朋友反应上面的语句执行不成功。可以在前面加上ruby再运行。

即:


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




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



7.测试

使用Redis客户端Redis-cli.exe来查看数据记录数,以及集群相关信息。

命令 redis-cli -c -h 'ip地址' -p '端口号' ;其实c表示集群的意思。

这里启动命令就是:
redis-cli -c -h 127.0.0.1 -p 6379

输入dbsize可查看总记录数。



输入cluster可查看集群相关信息。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: