redis-伪集群

Posted lvym

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis-伪集群相关的知识,希望对你有一定的参考价值。

1.安装redis (安装redis之前要安装gcc)  基于 redis5以后

解压---->进入redis目录------>make   或 make MALLOC=libc---->make PREFIX=/usr/local/redis install(执行make install 没有指定安装位置默认在/usr/local/bin )

2.创建集群文件夹,将redis.conf文件拷贝   cp /opt/redis-5.0.5/redis.conf /redisclusters/redis7006

 

 

3.修改redis.conf文件  批量修改   sed \'s/7000/7001/g\' redis7000/redis.conf > ./redis7001/redis.conf

                                                             7000--->7001    7000端口所在                  目标路径

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 4.启动要参与集群的  redis

                /usr/local/bin/redis-server /redisclusters/redis7000/redis.conf

                                                            .

                                                            .

                   /usr/local/bin/redis-server /redisclusters/redis7005/redis.conf

5.将redis添加集群  

       这些命令要在集群所在目录下执行

 

 

 这个命令会自动分配槽位(根据crc16(hash) 算法算出key的槽位) 0-16383    只有master才有槽位

  /usr/local/redis/bin/redis-cli --cluster create 主机IP:端口 主机IP:端口 主机IP:端口 主机IP:端口……  --cluster-replicas 1(1:1  一主一从)假如是 2 (1:2 一主二从)

      /usr/local/redis/bin/redis-cli --cluster help  集群帮助命令

 

 

6.进入client:   

              /usr/local/redis/bin/redis-cli -h 主机IP -p 7006(端口)  -c   

     

 

cluster info(查看集群信息)、cluster nodes(查看节点列表) (3)进行数据操作验证 (4)关闭集群则需要逐个进行关闭,使用命令:/usr/local/redis/bin/redis-cli -c -h 主机IP -p 端口 shutdown

 

 7.

      redis cluster集群是一个由多个主从节点群组成的分布式服务器群,它具有复制、高可用和分片特 性。Rediscluster集群不需要sentinel哨兵也能完成节点移除和故障转移的功能。需要将每个节点 设置成集群模式,这种集群模式没有中心节点,可水平扩展,据官方文档称可以线性扩展到 1000节点。redis cluster集群的性能和高可用性均
优于之前版本的哨兵模式,且集群配置非常简单 。

       redis扩容    :

 1.启动redis

2.修改配置文件

3.在集群目录下:

/usr/local/redis/bin/redis-cli --cluster help  集群帮助命令 可查看

/usr/local/redis/bin/redis-cli --cluster add-node 参加扩容主机IP:端口  已在集群主机IP:端口  添加redis进集群(Master)

/usr/local/redis/bin/redis-cli --cluster add-node 参加扩容主机IP:端口  已在集群主机IP:端口 --cluster-slave --cluster-master-id cead55fa89e4f7cdf1cb46f3a84c8b26918d69c1(redis Master IP)    (Slave)

添加槽位:

                /usr/local/redis/bin/redis-cli --cluster reshard 主机IP:端口  (随便一台已经进入集群)回车,根据提示操作。

 

redis缩容集群:
1.下线迁移槽  (有几个槽数就写几个,否则不能删除,master存在槽位是不能del)
    redis-cli --cluster reshard --cluster-from 要迁出节点ID --cluster-to 接收槽节点ID --cluster-slots 迁出槽数量 已存在节点ip(任意) 端口
2.忘记节点.关闭节点
    redis-cli --cluster del-node 已存在节点IP(任意):端口 要删除的节点ID
 

 

以上是关于redis-伪集群的主要内容,如果未能解决你的问题,请参考以下文章

redis-伪集群

Redis5以上版本伪集群搭建(高可用集群模式)

部署3主3从redis伪集群

redis集群搭建

Linux下redis5的安装及伪分布式集群搭建

redis cluster单机伪分布式搭建--- 3主3从3哨兵集群