• 初识Redis(二)


      集群(cluster)技术是一种较新的技术,通过集群技术,可以在付出较低成本的情况下获得在性能、可靠性、灵活性方面的相对较高的收益,其任务调度则是集群系统中的核心技术。

    集群是一组相互独立的、通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。一个客户与集群相互作用时,集群像是一个独立的服务器。集群配置是用于提高可用性和可缩放性。
      Redis集群:如果部署到多台电脑,就跟普通的集群一样;因为Redis是单线程处理的,多核CPU也只能使用一个核。所以部署在同一台电脑上,通过运行多个Redis实例组成集群,然后能提高CPU的利用率。
      Windows下搭建Redis集群:需要4个部件:Redis、Ruby语言运行环境、Redis和Ruby驱动redis.xxxx.gem、创建Redis集群的工具redis-trib.rb。
    一、下载并安装Redis
      安装参考上节,

    安装Redis并运行3个或3个以上实例,低于3个无法创建。

     

      安装之前修改redis.windows.conf文件中配置:

     

    1 cluster-enabled yes                                    #是否开启集群
    2 cluster-config-file nodes.6380.conf
    3 cluster-node-timeout 15000
    4 cluster-slave-validity-factor 10
    5 cluster-migration-barrier 1
    6 cluster-require-full-coverage yes

    二、Ruby语言运行环境下路径(http://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.2.4-x64.exe

    下载后,双击安装即可,同样,为了操作方便,也是建议安装在盘符根目录下,如: C:Ruby23-x64 ,安装时这里选中后两个选项, 意思是将ruby添加到系统的环境变量中,在cmd命令中能直接使用ruby的命令

    我操作的时候没有截图  下面部分图片 网上找的别的博客里面的图片

    使用redis-trib.rb工具来创建Redis集群,由于该文件是Ruby语言写的,需要安装Ruby开发环境,以驱动redis-xxxx.gem。

    三、驱动Redis.xxxx.gem(考虑到兼容性下载的3.2.2版本  https://rubygems.org/gems/redis/versions/3.2.2

    四、创建工具redis-trib.rb(https://raw.githubusercontent.com/MSOpenTech/redis/3.0/src/redis-trib.rb 打开该链接如果没有下载,而是打开一个页面,那么将该页面保存为redis-trib.rb, 建议保存到Redis的目录下)

    注意:因为redis-trib.rb是ruby代码,必须用ruby来打开,若redis-trib.rb无法识别,需要手动选择该文件的打开方式:

    **选择ruby为的打开方式后,redis-trib.rb的logo都会发生改变,如下图:

     

    二、架设

    CMD下切换到Redis目录,使用redis-trib.rb来创建Redis集群:

    redis-trib.rb create --replicas 1 127.0.0.1:7379 127.0.0.1:7380 127.0.0.1:7381 127.0.0.1:7382 127.0.0.1:7383 127.0.0.1:7384
    #replicas 1 表示我们希望为集群中的每个主节点创建一个从节点 上述6个服务,是3主3从

    我本地模拟是没有从全部是主 所以replicas 0 
    执行上述代码 出现如下错误提示:

    解决方案:

    #将每个节点下aof、rdb、nodes.conf本地备份文件删除; 
    127.0.0.1:7379> flushdb #清空当前数据库(可省略) 
    127.0.0.1:7380> flushdb #清空当前数据库(可省略) 
    127.0.0.1:7391> flushdb #清空当前数据库(可省略) 
    #之后再执行脚本,成功执行;

    输入yes后如果出现下列情况

    slot插槽被占用了(这是 搭建集群前时,以前redis的旧数据和配置信息没有清理干净。需要清除键值存储,用redis-cli 登录到每个节点执行  flushall  和 cluster reset  就可以了。

    然后再次运行当出现提示时,需要手动输入yes,输入后,当出现以下内容,说明已经创建了Redis集群

    系统会根据算法分配到redis中

     检查是否创建成功,使用 

    redis-trib.rb check 127.0.0.1:7380
    

      

    创建成功

    通过 cluster info 查看集群信息

    cluster info
    

      

     
  • 相关阅读:
    RedHat Linux-配置YUM仓库
    04、管道符、重定向与环境变量
    03、新手必须掌握的Linux命令
    size_t
    decltype关键字
    python numpy使用笔记
    Huffman编码
    动态规划(dynamic programming)
    Prim算法
    Kruskal算法
  • 原文地址:https://www.cnblogs.com/bjrwx/p/9234796.html
Copyright © 2020-2023  润新知