美文网首页
Redis: 单机部署Cluster模式集群(redis 4.0

Redis: 单机部署Cluster模式集群(redis 4.0

作者: RealityVibe | 来源:发表于2020-01-16 01:07 被阅读0次

    1. 修改redis.conf配置文件

    先从redis文件夹的bin目录下复制6份redis.conf文件

    cp ./bin/redis.conf ../../Middleware/redis-cluster/8001/redis.conf
    cp ./bin/redis.conf ../../Middleware/redis-cluster/8002/redis.conf
    cp ./bin/redis.conf ../../Middleware/redis-cluster/8003/redis.conf
    cp ./bin/redis.conf ../../Middleware/redis-cluster/8004/redis.conf
    cp ./bin/redis.conf ../../Middleware/redis-cluster/8005/redis.conf
    cp ./bin/redis.conf ../../Middleware/redis-cluster/8006/redis.conf
    

    修改内容

    port 8001~8006
    cluster-enabled yes
    cluster-config-file nodes.conf
    cluster-node-timeout 5000
    appendonly yes

    参考:

    2. 通过不同的redis.conf配置文件,分别启动6个redis服务

    命令行

    ./bin/redis-server ../../Middleware/redis-cluster/8001/redis.conf
    ./bin/redis-server ../../Middleware/redis-cluster/8002/redis.conf
    ./bin/redis-server ../../Middleware/redis-cluster/8003/redis.conf
    ./bin/redis-server ../../Middleware/redis-cluster/8004/redis.conf
    ./bin/redis-server ../../Middleware/redis-cluster/8005/redis.conf
    ./bin/redis-server ../../Middleware/redis-cluster/8006/redis.conf
    

    运行结果

    分别启动6个redis服务

    3. 创建集群

    命令行

    参考文章中redis-trib 在redis/bin目录下,而本次操作版本中该程序在redis/bin/src目录下,实际操作中视具体情况而定。

    ./redis-trib.rb create --replicas 1 192.168.43.110:8001 192.168.43.110:8002 192.168.43.110:8003 192.168.43.110:8004 192.168.43.110:8005 192.168.43.110:8006
    
    // 会出现以下内容
    // Can I set the above configuration? (type 'yes' to accept): 
    输入yes
    

    运行结果

    红框内为输入的内容,黄框内为主从关系(可以通过id判断),

    可见建立了主从关系为(M-S)8001-8006, 8002-8004, 8003-8005

    创建集群

    4. 验证集群关系建立

    主节点(Master)

    -- 进入8001节点 -c 一定要加,表示开启集群模式 否则会出现从节点无法获取主节点设置的value的Error
    > redis-cli -c -h 192.168.43.110 -p 8001
    
    -- 获取节点信息, 
    -- 可以发现role:master,表示8001为主节点
    -- slave:8006 8001对应的从节点为8006
    > info replication
    
    -- 主节点设置key:hello, value: redis
    > set hello redis
    
    info replication

    从节点(Slave)

    -- 进入8006节点 -c 一定要加,表示开启集群模式 否则会出现从节点无法获取主节点设置的value的Error
    > redis-cli -c -h 192.168.43.110 -p 8006
    
    -- 获取节点信息, 
    -- 可以发现role:slave,表示8006为从节点
    -- master:8001 8006对应的主节点为8001
    > info replication
    
    -- 验证是否能get主节点设置的值
    > get hello
    
    从节点

    5. 小坑

    如果在第4步中,进入客户端的命令缺少"-c",可能会出现以下异常。

    192.168.43.110:8006> get hello
    (error) MOVED 866 192.168.43.110:8001
    

    相关文章

      网友评论

          本文标题:Redis: 单机部署Cluster模式集群(redis 4.0

          本文链接:https://www.haomeiwen.com/subject/dtgxzctx.html