• redis集群添加新节点


    一、创建节点(接上文)

    1、在H1服务器/root/soft目录下创建7002目录

    2、将7001目录的配置文件redis.conf拷贝到7002,并修改配置文件的端口

    3、进入 redis-5.0.5 目录下,执行启动命令  

    ./src/redis-server ../7002/redis.conf

    4、进入H2创建7002的salve,步骤与前三个步骤一样

    二、添加节点

    1、第一个ip:port 为需要添加的节点ip和端口,第二个ip:port为当前集群中的节点和端口;先后执行以下命令:

    ./src/redis-cli --cluster add-node 172.26.237.83:7002 172.26.237.83:7000 -a 0123456789
    ./src/redis-cli --cluster add-node 172.26.237.84:7002 172.26.237.83:7000 -a 0123456789

    2、在H1进入redis客户查看集群的健康状态和节点状态

    三、分配哈希槽

    注意:新添加的节点是没有哈希曹的,所以并不能正常存储数据,需要给新添加的节点分配哈希曹:

     1、重新分配哈希槽

    # ip:port 为当前redis集群任意节点ip和port,-a后面加密码
    ./src/redis-cli --cluster reshard ip:port -a 密码

    执行上述命令后,如图:

    分配哈希槽有两种方式:

      (1)在其他节点拿出适量的哈希槽分配到目标节点:输入all 需要分配给目标节点的哈希槽来着当前集群的其他主节点(每个节点拿出的数量为集群自动决定)

      (2)在指定的节点拿出指定数量的哈希槽分配到目标节点:done

    我现在使用第一种方式分配哈希槽:

    2、输入要分配多少个哈希槽(数量)?比如我要分配1000个哈希槽

     3、输入指定要分配哈希槽的节点ID,如上上图端口号为7002的两个master节点哈希槽的数量为0(选择任意一个节点作为目标节点进行分配哈希槽);

     4、选择需要分配的哈希槽来源,输入all

     是否继续执行建议的reshard计划

     输入yes后,就会完成分配哈希槽:

    (1)进入redis客户端cluster slots 查看(7002端口的主节点的原哈希槽数量为0)

  • 相关阅读:
    SVN cleanup操作反复失败解决办法
    mysql常用命令之-用户密码修改
    properties 配置文件中值换行的问题
    在每一行行尾添加内容
    Java 毫秒转换为日期类型、日期转换为毫秒
    SimpleDateFormat 12小时制以及24小时制的写法
    java校验时间格式 HH:MM
    ClassLoader 详解及用途(写的不错)
    ObjectInputStream类和ObjectInputStream类的使用
    logback 详解
  • 原文地址:https://www.cnblogs.com/yfacesclub/p/11856182.html
Copyright © 2020-2023  润新知