前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Redis逻辑集群创建

Redis逻辑集群创建

作者头像
zeekling
发布2022-07-17 15:24:24
4650
发布2022-07-17 15:24:24
举报

逻辑集群简介

Redis从3.0开始引入集群模式的概念。

集群由多个节点(Node)组成,Redis的数据分布在这些节点中。集群中的节点分为主节点和从节点:只有主节点负责读写请求和集群信息的维护;从节点只进行主节点数据和状态信息的复制。

Redis集群模式的作用主要分为:

  • 数据分区:数据分区(或称数据分片)是集群最核心的功能。
  • 高可用:Redis集群模式中,每个主实例都会存在至少一个备实例,能够在主实例故障之后,顶替主实例工作。整个集群不可用时间在30s以下。

逻辑集群的创建

下载Redis源代码:

代码语言:javascript
复制
git clone git@github.com:redis/redis.git
cd redis

给Redis实例开启集群模式

使用下面命令启动6个redis实例:

代码语言:javascript
复制
cd /utils/create-cluster
./create-cluster start 6

创建完成之后,实例的cluster模式已经被打开:

image1
image1

cluster的配置已经配置:

image2
image2

默认情况下,只有当前节点自己

image3
image3

创建逻辑集群

执行下面命令创建逻辑集群:

代码语言:javascript
复制
./create-cluster create 6

创建完成之后登录集群执行 cluster info可以看到:

image4
image4

里面主要执行了:

代码语言:javascript
复制
redis-cli --cluster create 主实例 --cluster-replicas 备实例

create里面主要执行了下面两个操作:

  • 实例之间执行cluster meet,创建逻辑集群,比如cluster meet ip port
  • 根据当前的实例分配主从关系。使用给主实例指定从实例:CLUSTER REPLICATE id ,其中id就是从实例的唯一id。image3中的第一列值。
  • 在主实例上执行cluster setslot slot <slot>分配槽位,将16384个槽位均分到3个主实例上

下面是创建了集群了配置信息:

image5
image5

文件里面含义如下:

  • 第一列表示当前实例的唯一表示id,长度固定。
  • 第二列表示当前实例的ip和端口信息,格式:当前实例监听ip:监听端口@集群通信端口
  • 第三列表示当前实例是主实例还是从实例,是否为当前登录实例,包含myself的是当前配置文件对应的实例
  • 第四列表示对应主实例的id,-表示当前实例是主实例
  • 第五、六、七列分别是:已经发送的ping大小,接收到的pong的大小,当前实例的Epoch
  • 第八列是当前实例是否可以连通整个集群:connected表示连通,disconnected表示连不通
  • 第九列以及后面的列表示当前实例所对应的槽位,比如0-1000表示当前实例包含0-1000的槽位

本文系转载,前往查看

如有侵权,请联系?cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系?cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 逻辑集群简介
  • 逻辑集群的创建
    • 给Redis实例开启集群模式
      • 创建逻辑集群
      相关产品与服务
      云数据库 Redis
      腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
      http://www.vxiaotou.com