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


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


    二 安装配置redis 

    redis下载地址   https://github.com/MSOpenTech/redis/releases ;  下载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
     1 port 6380       #端口号
     2 loglevel notice    #日志的记录级别,notice是适合生产环境的
     3 logfile "Logs/redis6380_log.txt"      #指定log的保持路径,默认是创建在Redis安装目录下,如果有子目录需要手动创建,如此处的Logs目录
     4 syslog-enabled yes                         #是否使用系统日志
     5 syslog-ident redis6380                   #在系统日志的标识名
     6 appendonly yes                              #数据的保存为aof格式
     7 appendfilename "appendonly.6380.aof"    #数据保存文件
     8 cluster-enabled yes                                    #是否开启集群
     9 cluster-config-file nodes.6380.conf
    10 cluster-node-timeout 15000
    11 cluster-slave-validity-factor 10
    12 cluster-migration-barrier 1
    13 cluster-require-full-coverage yes

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

     

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

    title redis-6380
    redis-server.exe redis.windows.conf

    三 安装Ruby

    redis的集群使用  ruby脚本编写,所以系统需要有 Ruby 环境 ,下载地址  https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.2.6-x64.exe(此处的版本是2.2.6版本)

     

    安装时3个选项都勾选。

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

    下载地址 https://rubygems.org/rubygems/rubygems-2.6.12.zip, 下载后解压,当前目录切换到解压目录中,如 D:Program Files edis ubygems-2.6.12 然后在命令行执行  ruby setup.rb。

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

    gem install redis

     


    五 安装集群脚本redis-trib

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

    (或者:https://github.com/MicrosoftArchive/redis/releases

    这个redis-trib.rb可以从对应版本的redis-XX.tar.gz中的src目录下获取

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

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

    把每个节点下的 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 。成功后的结果如下:

     

    七测试

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

    命令 redis-cli –c –h ”地址” –p "端口号" ;  c 表示集群

     

    输入dbsize查询 记录总数

     

    输入cluster info可以从客户端的查看集群的信息


    ---------------------
    作者:猪脚踏浪
    来源:CSDN
    原文:https://blog.csdn.net/zsg88/article/details/73715947
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    诺基亚e71收不到彩信的解决办法
    calloc(), malloc(), realloc(), free(),alloca()
    win7下移动硬盘不能安全删除的解决方法
    C语言指针总结
    复制和剪切到底谁快?
    IC设计流程
    请用真正的原版电驴(eMule)!VeryCD是假电驴!
    [置顶] 图片检索,船,古代, 三桅, 三角帆船,侧滑浆
    [置顶] "在证书存储区中找不到清单签名证书"问题分析以及解决方案
    [置顶] sql2008 用户映射问题
  • 原文地址:https://www.cnblogs.com/tutubaobao/p/10482698.html
Copyright © 2020-2023  润新知