广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >redis集群操作
  • 927
分享到

redis集群操作

redis数据库java 2023-09-15 18:09:52 927人浏览 泡泡鱼
摘要

Redis集群 1 集群2 集群架构图3 集群细节4 集群搭建4.1.创建集群4.2.查看集群状态4.3.添加主节点4.4.添加从节点4.5.删除副本节点4.6.集群在线分片

Redis集群

1 集群

Redis在3.0后开始支持Cluster(模式)模式,目前redis的集群支持节点的自动发现,支持slave-master选举和容错,支持在线分片(sharding shard )等特性。

2 集群架构

在这里插入图片描述

3 集群细节

- 所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽.- 节点的fail是通过集群中超过半数的节点检测失效时才生效. - 客户端与redis节点直连,不需要中间proxy层.客户端不需要连接集群所有节点,连接集群中任何一个可用节点即可- redis-cluster把所有的物理节点映射到[0-16383]slot上,cluster 负责维护node<->slot<->value

在这里插入图片描述

4 集群搭建

判断一个是集群中的节点是否可用,是集群中的所用主节点选举过程,如果半数以上的节点认为当前节点挂掉,那么当前节点就是挂掉了,所以搭建redis集群时建议节点数最好为奇数。
搭建集群至少需要三个主节点,三个从节点,至少需要6个节点

  1. 准备环境安装ruby以及redis集群依赖

    yum install -y ruby rubygemsgem install redis-xxx.gem
  2. 在一台机器创建7个目录

    [root@localhost ~]# mkdir 7000 7001 7002 7003 7004 7005 7006
  3. 每个目录复制一份配置文件

    [root@localhost ~]# cp redis-7.0.0/redis.conf 7000/[root@localhost ~]# cp redis-7.0.0/redis.conf 7001/[root@localhost ~]# cp redis-7.0.0/redis.conf 7002/[root@localhost ~]# cp redis-7.0.0/redis.conf 7003/[root@localhost ~]# cp redis-7.0.0/redis.conf 7004/[root@localhost ~]# cp redis-7.0.0/redis.conf 7005/[root@localhost ~]# cp redis-7.0.0/redis.conf 7006/
  4. 修改不同目录配置文件

    port 6379 .....                 //修改端口bind  0.0.0.0                    //开启远程连接cluster-enabled  yes          //开启集群模式cluster-config-file  nodes-port.conf //集群节点配置文件cluster-node-timeout  5000         //集群节点超时时间appendonly  yes                  //开启AOF持久化
  5. 指定不同目录配置文件启动七个节点

    [root@localhost bin]# ./redis-server  /root/7000/redis.conf[root@localhost bin]# ./redis-server  /root/7001/redis.conf[root@localhost bin]# ./redis-server  /root/7002/redis.conf[root@localhost bin]# ./redis-server  /root/7003/redis.conf[root@localhost bin]# ./redis-server  /root/7004/redis.conf[root@localhost bin]# ./redis-server  /root/7005/redis.conf[root@localhost bin]# ./redis-server  /root/7006/redis.conf
  6. 查看进程

    [root@localhost bin]# ps aux|grep redis 

4.1.创建集群

  1. 复制集群操作脚本到bin目录中

    [root@localhost bin]# cp /root/redis-7.0.0/src/redis-trib.rb .
  2. 创建集群

    ./redis-trib.rb create --replicas 1 192.168.202.205:7000 192.168.202.205:7001 192.168.202.205:7002 192.168.202.205:7003 192.168.202.205:7004 192.168.202.205:7005 192.168.202.205:7006
  3. 集群创建成功出现如下提示

    [OK] ALL XXX slots covered.

4.2.查看集群状态

  1. 查看集群状态 check [原始集群中任意节点] [无]
 ./redis-trib.rb check 192.168.202.205:7000
  1. 集群节点状态说明
    • 主节点
      主节点存在hash slots,且主节点的hash slots 没有交叉
      主节点不能删除
      一个主节点可以有多个从节点
      主节点宕机时多个副本之间自动选举主节点

    • 从节点
      从节点没有hash slots
      从节点可以删除
      从节点不负责数据的写,只负责数据的同步

4.3.添加主节点

  1. 添加主节点 add-node [新加入节点] [原始集群中任意节点]
    ./redis-trib.rb  add-node 192.168.1.158:7006  192.168.1.158:7005- 注意: 1.该节点必须以集群模式启动 2.默认情况下该节点就是以master节点形式添加

4.4.添加从节点

  1. 添加从节点 add-node --slave [新加入节点] [集群中任意节点]
    ./redis-trib.rb  add-node --slave 192.168.1.158:7006 192.168.1.158:7000- 注意: 当添加副本节点时没有指定主节点,redis会随机给副本节点较少的主节点添加当前副本节点
  2. 为确定的master节点添加主节点 add-node --slave --master-id master节点id [新加入节点] [集群任意节点]
    ./redis-trib.rb  add-node --slave --master-id 3c3a0c74aae0b56170ccb03a76b60cfe7dc1912e    127.0.0.1:7006  127.0.0.1:7000

4.5.删除副本节点

  1. 删除节点 del-node [集群中任意节点] [删除节点id]
    ./redis-trib.rb  del-node 127.0.0.1:7002 0ca3f102ecf0c888fc7a7ce43a13e9be9f6d3Dd1- 注意: 1.被删除的节点必须是从节点或没有被分配hash slots的节点

4.6.集群在线分片

  1. 在线分片 reshard [集群中任意节点] [无]
    ./redis-trib.rb  reshard  192.168.1.158:7000

来源地址:https://blog.csdn.net/qq_43585922/article/details/128446030

--结束END--

本文标题: redis集群操作

本文链接: https://www.lsjlt.com/news/408910.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • redis集群操作
    Redis集群 1 集群2 集群架构图3 集群细节4 集群搭建4.1.创建集群4.2.查看集群状态4.3.添加主节点4.4.添加从节点4.5.删除副本节点4.6.集群在线分片 ...
    99+
    2023-09-15
    redis 数据库 java
  • python 操作redis集群
    redis集群cd /usr/local/redis3.0/src./redis-trib.rb  create --replicas 1 ip1:7000 ip1:7001cluster info/nodesredis-cli -c -h...
    99+
    2023-01-31
    集群 操作 python
  • 【Redis】用python操作redis集群
    https://blog.csdn.net/bitcarmanlee/article/details/51852126  密码不能写到列表中去: 有密...
    99+
    2022-10-18
  • Redis集群操作的方法
    本篇内容介绍了“Redis集群操作的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!基于已有一定基础,这...
    99+
    2022-10-19
  • redis 集群批量操作实现
     Redis集群是没法执行批量操作命令的,如mget,pipeline等。这是因为redis将集群划分为16383个哈希槽,不同的key会划分到不同的槽中。但是,Jedis...
    99+
    2022-11-12
  • redis集群的作用
    这篇文章将为大家详细讲解有关redis集群,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。所谓的集群,就是通过添加服务器的数量,提供相同的服务,从而让服务器达...
    99+
    2022-10-18
  • Redis集群的关闭与重启操作
    Redis集群关闭与重启 1、注意 [root@master bin]# ./redis-cli --cluster create 192.168.230.21:7001 192...
    99+
    2022-11-12
  • redis集群
    Redis集群基本介绍Redis 集群是一个可以在多个 Redis 节点之间进行数据共享的设施installation。Redis 集群不支持那些需要同时处理多个键的...
    99+
    2022-10-18
  • redis集群有什么作用
    所谓的集群,就是通过添加服务器的数量,提供相同的服务,从而让服务器达到一个稳定、高效的状态。使用redis集群的必要性问题:我们已经部署好了redis,并且能启动一个redis,实现数据的读写,为什么还要学习redis集群?答:(1)单个r...
    99+
    2021-05-27
    redis
  • Redis集群水平扩展、集群中添加以及删除节点的操作
    在Redis集群搭建中,我们搭建了下图所示的Redis集群,接下来我们就来看看如何为我们的Redis集群进行水平扩容。 [root@localhost redis-5.0.3]...
    99+
    2022-11-11
  • Redis集群(Cluster)
    Redis集群 集群解决的问题代理主机和无中心化集群Redis集群的特点Redis集群环境搭建slots(插槽)在集群中录入值查询集群中的值故障恢复Redis集群的优缺点 集群解决的问...
    99+
    2023-08-31
    redis 数据库 服务器
  • Redis集群模式
    1、常见的三种数据的集群存储模式 full-mirror:全量镜像模式,单纯备份模式,各个节点数据相同,都包含了全量数据,仅主节点可写,保证了数据冗余和读的负载均衡。数据安全性高,横向扩展能力差,资源利用率不高。 pure-sh...
    99+
    2016-08-18
    Redis集群模式
  • redis集群搭建
    Redis 5.0之后版本的高可用集群搭建 Redis系统介绍: Redis的基础介绍与安装使用步骤:https://www.jianshu.com/p/2a23257af57b Redis的基础数据结构与使用:https...
    99+
    2019-03-23
    redis集群搭建
  • redis集群安装
    本文 redis版本3.2.9介绍 IP 端口 角色 127.0.0.1 7000 Master 127.0.0.1 7001 Master 127.0.0.1 7002 Maste...
    99+
    2022-10-18
  • Redis 哨兵集群
    哨兵集群介绍Redis的哨兵(sentinel) 常用于管理多个 Redis 服务器,它主要会执行以下三个任务:        监控(M...
    99+
    2022-10-18
  • Redis集群实战
                       Redis基础到集群实战笔记   &n...
    99+
    2022-10-18
  • redis 3.0 cluster 集群
    周氏一族,整理技术文档,给下一代留点教程......redis 3.0 cluster 安装篇,请看 http://zhoushouby.blog.51cto.com/9150272/1560400 本篇,是在 "redis 3.0 clu...
    99+
    2023-01-31
    集群 redis cluster
  • redis怎么做集群
    Redis Sharding集群Redis 3正式推出了官方集群技术,解决了多Redis实例协同服务问题。Redis Cluster可以说是服务端Sharding分片技术的体现,即将键值按照一定算法合理分配到各个实例分片上,同时各个实例节点...
    99+
    2014-06-28
    redis
  • Redis集群的安装
    Redis集群的安装步骤 注意:redis的单节点安装之前已经安装好了 1.创建安装目录 在master ,node1 ,node2中分别创建      mkdir /usr/local/soft/redis-cluster 2、将r...
    99+
    2017-08-31
    Redis集群的安装
  • redis学习4---集群
    Redis-Cluster采用无中心结构,每个节点保存数据和整个集群状态。所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽。redis-cluster把所有的节点...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作