• redis cluster


    redis cluster 集群命令

    注 :这些命令是集群所独有的。执行下述命令要先登录(集群已经创建 )
    集群配置文件:需注意 cluster-migration-barrier 1  (其值大小跟每个节点的slave角色的个数有关 slave_num +1)

        cluster-enabled yes  
        cluster-config-file nodes-6379.conf #(建议以nodes-端口号的形式命名,方便辨识)  
        cluster-node-timeout 15000  
        cluster-slave-validity-factor 10  
        cluster-migration-barrier 1  
        cluster-require-full-coverage yes  


    redis-cli -c -p 6382 -h 192.168.10.220

    //集群(cluster)  
    CLUSTER INFO 打印集群的信息  
    CLUSTER NODES 列出集群当前已知的所有节点(node),以及这些节点的相关信息。   
     
    //节点(node)  
    CLUSTER MEET <ip> <port> 将 ip 和 port 所指定的节点添加到集群当中,让它成为集群的一份子。  
    CLUSTER FORGET <node_id> 从集群中移除 node_id 指定的节点。  
    CLUSTER REPLICATE <node_id> 将当前节点设置为 node_id 指定的节点的从节点。

    //槽(slot)  
    CLUSTER ADDSLOTS <slot> [slot ...] 将一个或多个槽(slot)指派(assign)给当前节点。  
    CLUSTER DELSLOTS <slot> [slot ...] 移除一个或多个槽对当前节点的指派。  
    CLUSTER FLUSHSLOTS 移除指派给当前节点的所有槽,让当前节点变成一个没有指派任何槽的节点。  
    CLUSTER SETSLOT <slot> NODE <node_id> 将槽 slot 指派给 node_id 指定的节点,如果槽已经指派给另一个节点,那么先让另一个节点删除该槽>,然后再进行指派。  
    CLUSTER SETSLOT <slot> MIGRATING <node_id> 将本节点的槽 slot 迁移到 node_id 指定的节点中。  
    CLUSTER SETSLOT <slot> IMPORTING <node_id> 从 node_id 指定的节点中导入槽 slot 到本节点。  
    CLUSTER SETSLOT <slot> STABLE 取消对槽 slot 的导入(import)或者迁移(migrate)。

    //键 (key)  
    CLUSTER KEYSLOT <key> 计算键 key 应该被放置在哪个槽上。  
    CLUSTER COUNTKEYSINSLOT <slot> 返回槽 slot 目前包含的键值对数量。

    CLUSTER GETKEYSINSLOT <slot> <count> 返回 count 个 slot 槽中的键。

    ruby 执行redis-trip.rb工具操作cluster
    删除从节点(从节点 节点的id)
    /data/app/redis/bin/redis-trib.rb del-node 10.25.169.88:18103 "12e8a5f7655512419d54d640f4010114995e9d91"
    添加主节点 (新节点 老节点)
    /data/app/redis/bin/redis-trib.rb add-node 192.168.10.219:6378 192.168.10.219:6379  
    添加从节点  (主节点的node-id  新加从节点 主节点)
    /data/app/redis/bin/redis-trib.rb add-node --slave --master-id d2c619f96b351a7ad785e178fdd3b023e89c89d2 10.80.60.149:18110  10.25.169.88:18110


    新增加的主节点,是没有slots的 ,需重新分配slot
     redis-trib.rb reshard 192.168.10.219:6378 //下面是主要过程  
     
    How many slots do you want to move (from 1 to 16384)? 1000 //设置slot数1000  
    What is the receiving node ID? 03ccad2ba5dd1e062464bc7590400441fafb63f2 //新节点node id  
    Please enter all the source node IDs.  
     Type 'all' to use all the nodes as source nodes for the hash slots.  
     Type 'done' once you entered all the source nodes IDs.  
    Source node #1:all //表示全部节点重新洗牌  
    Do you want to proceed with the proposed reshard plan (yes/no)? yes //确认重新分

    10.80.60.149:18106
    10.80.60.149:18117
    10.80.60.149:18134
    10.80.60.149:18108
    10.80.60.149:18112

    --98--108--10.80.60.149:18114

    --98--108--10.80.60.149:18109
    --108--10.80.60.149:18101

    --98--108--10.80.60.149:18135
    --98--10.80.60.149:18110

  • 相关阅读:
    convert.c:7:3: warning: incompatible implicit declaration of built-in function ‘printf’ [enabled by
    80 多个 Linux 系统管理员必备的监控工具
    控件风格19种,必须倒背如流——其实就是控件所拥有的能力,即有条件使用VCL框架所提供的(功能)代码
    控件状态11种,必须倒背如流——记录控件当前的状态,防止误判(一般使用完以后就把状态改回去)
    FindChildControl与FindComponent
    保存网页为图片——滚动截取IE(WebBrowse)
    HDOJ 1755
    IP编辑控件(因为封装的是系统自带控件,所以也使用了CreateSubClass,不过为啥要封装CN_COMMAND和CN_NOTIFY不是很明白)
    QT之深入理解QThread
    Qt读取ANSI格式文件——利用QTextCodec将其他编码格式的QByteArray转换为Unicode格式,或者从文件中读出后直接做转换
  • 原文地址:https://www.cnblogs.com/lx823706/p/7349835.html
Copyright © 2020-2023  润新知