文档章节

Redis 3.0集群(二)

仝玉甫
 仝玉甫
发布于 2015/04/27 18:02
字数 669
阅读 3384
收藏 97
点赞 0
评论 2


 在Redis 3.0集群(一)中讲了Redis集群的基本搭建。这一节主要讲对Redis集群的操作。

添加Master节点到集群

  • 按照Redis集群一的方式,创建端口为7006的新实例,并启动该实例

  • 将7006添加到集群:

redis-trib.rb add-node 127.0.0.1:7006 127.0.0.1:7000

    node:新节点没有包含任何数据, 因为它没有包含任何slot。新加入的加点是一个主节点, 当集群需要将某个从节点升级为新的主节点时, 这个新节点不会被选中。

  • 给新节点分配哈希槽:

redis-trib.rb reshard 127.0.0.1:7000
#根据提示选择要迁移的slot数量(ps:这里选择500)
How many slots do you want to move (from 1 to 16384)? 500
#选择要接受这些slot的node-id
What is the receiving node ID? f51e26b5d5ff74f85341f06f28f125b7254e61bf
#选择slot来源:
#all表示从所有的master重新分配,
#或者数据要提取slot的master节点id,最后用done结束
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:3375be2ccc321932e8853234ffa87ee9fde973ff
Source node #2:done
#打印被移动的slot后,输入yes开始移动slot以及对应的数据.
#Do you want to proceed with the proposed reshard plan (yes/no)? yes
#结束
  • 查看操作结果:

redis-cli -c -p 7000
cluster nodes

    可以看到返回的集群信息中,7006拥有了0-999哈希槽。

添加Slave节点到集群

  • 按照Redis集群一的方式,创建端口为7007的新实例,并启动该实例

  • 将7007添加到集群:

redis-trib.rb add-node 127.0.0.1:7007 127.0.0.1:7000
  • 设置为7006的slave:

redis-cli -c -p 7007
#参数为master节点的ID
cluster replicate 2b9ebcbd627ff0fd7a7bbcc5332fb09e72788835

删除一个Slave节点

#redis-trib del-node ip:port '<node-id>'  
redis-trib.rb del-node 127.0.0.1:7007 'c7ee2fca17cb79fe3c9822ced1d4f6c5e169e378'

删除一个Master节点

删除master节点之前首先要使用reshard移除master的全部slot,然后再删除当前节点(目前只能把被删除master的slot迁移到一个节点上)

redis-trib.rb reshard 127.0.0.1:7006
#根据提示选择要迁移的slot数量(ps:这里选择500)
How many slots do you want to move (from 1 to 16384)? 500
#选择要接受这些slot的node-id
What is the receiving node ID? f51e26b5d5ff74f85341f06f28f125b7254e61bf
#选择slot来源:
#all表示从所有的master重新分配,
#或者数据要提取slot的master节点id,最后用done结束
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:3375be2ccc321932e8853234ffa87ee9fde973ff
Source node #2:done
#打印被移动的slot后,输入yes开始移动slot以及对应的数据.
#Do you want to proceed with the proposed reshard plan (yes/no)? yes
#结束

#删除空master节点
redis-trib.rb del-node 127.0.0.1:7006 'c7ee2fca17cb79fe3c9822ced1d4f6c5e169e378'


© 著作权归作者所有

共有 人打赏支持
仝玉甫
粉丝 5
博文 13
码字总数 9571
作品 0
浦东
程序员
加载中

评论(2)

蒋默
蒋默
删除一个Master节点时,Source node #1:3375be2ccc321932e8853234ffa87ee9fde973ff.这个应该是你移除的master的节点的ID吧?意思是从这个节点移除500个slot。

#删除空master节点
redis-trib.rb del-node 127.0.0.1:7006 'c7ee2fca17cb79fe3c9822ced1d4f6c5e169e378' 你这个ID怎么和上面移除的ID不一样??
AkataMoKa
AkataMoKa
好文,赞!
codis集群部署实战

一、概要 1、折腾codis集群已经快两个月了,感谢一直以来codis的作者刘奇和黄东旭的耐心支持,在这里给你们点个赞,现在我司已经有一个业务跑在了codis集群上,目前只是切了整个业务的10%的量...

navyaijm2012 ⋅ 2015/04/23 ⋅ 0

redis高可用架构

一、背景 公司的业务在大量的使用redis,访问量大的业务我们有在使用codis集群,redis 3.0集群,说到redis 3.0集群,我们线上已经跑了半年多了,集群本身没有出现过任务问题,但是由于我们这...

navyaijm2012 ⋅ 2016/02/27 ⋅ 0

迁移数据到redis-cluster

旧redis: 192.168.1.204 192.168.1.205 分别存放着不同的key redis-cluster: Master:192.168.1.200 192.168.1.202 192.168.1.203 Slave: 192.168.1.206 192.168.1.207 192.168.1.208 模拟red......

362475097 ⋅ 2017/01/09 ⋅ 0

redis集群实战

一、说明 redis 3.0集群功能出来已经有一段时间了,目前最新稳定版是3.0.5,我了解到已经有很多互联网公司在生产环境使用,比如唯品会、美团等等,刚好公司有个新项目,预估的量单机redis无法...

navyaijm2012 ⋅ 2015/10/27 ⋅ 0

求知识,redis3.0集群创建好后,如何在spring-data-redis支持?

RT,以前只有一台REDIS的时候,是用org.springframework.data.redis.core.RedisTemplate的,现在变成3.0集群了,如和使用spring-data-redis? redis 3.0集群配置,我是参考这个配置http://my...

猫神 ⋅ 2015/11/24 ⋅ 0

Redis集群方案

单机 redis最主要的适用场景:少量数据存储,高速读写访问,数据全部in-momery 的方式来保证高速访问,同时提供数据落地的功能。 分布式 随着用户量的增长,数据量随之增长,大型网站应用,热...

ksfzhaohui ⋅ 2016/08/03 ⋅ 0

征服 Redis + Jedis

用Memcached,对于缓存对象大小有要求,单个对象不得大于1MB,且不支持复杂的数据类型,譬如SET 等。基于这些限制,有必要考虑Redis! 相关链接: 征服 Redis 征服 Redis + Jedis 征服 Redi...

凯文加内特 ⋅ 2015/03/18 ⋅ 0

这可能是最全的 Redis 集群方案介绍了

这可能是最全的 Redis 集群方案介绍了 原创 2016-06-01 曾健生 运维帮 由于Redis出众的性能,其在众多的移动互联网企业中得到广泛的应用。Redis在3.0版本前只支持单实例模式,虽然现在的服务...

fdhay ⋅ 2016/06/02 ⋅ 0

redis2.8版本之前怎么实现集群

What's new in Redis 3.0 compared to Redis 2.8? Redis Cluster: a distributed implementation of a subset of Redis.我们从官网看到,redis3.0正式支持集群,请教各位大神,那2.8之前的版......

GreatQing ⋅ 2015/08/24 ⋅ 1

ubuntu 安装 redis集群

计划部署三个虚拟机 三个master节点 三个slave节点: IP:192.168.26.133 port:7133(master) port:8133(slave) IP:192.168.26.134 port:7134(master) port:8134(slave) IP:192.168.26.135 po......

foxeye ⋅ 2015/11/24 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Thrift RPC实战(二) Thrift 网络服务模型

TServer类层次体系 TSimpleServer/TThreadPoolServer是阻塞服务模型 TNonblockingServer/THsHaServer/TThreadedSelectotServer是非阻塞服务模型(NIO) 1 TServer抽象类的定义 内部静态类Args的...

lemonLove ⋅ 7分钟前 ⋅ 0

vim命令用法

第五章 vim命令 vim和vi几乎是一样的,唯一的区别就是当编辑一个文本时,使用vi不会显示颜色,而使用vim会显示颜色。 vim有三个模式:一般模式,编辑模式,命令模式。 系统最小化安装时没有安...

弓正 ⋅ 8分钟前 ⋅ 0

MyBatis源码解读之配置

1. 目的 本文主要介绍MyBatis配置文件解析,通过源码解读mybatis-config.xml(官方默认命名)、Mapper.xml 与Java对象的映射。 2. MyBatis结构 查看大图 MyBatis结构图,原图实在太模糊了,所以...

无忌 ⋅ 12分钟前 ⋅ 0

Ignite的jdbc与网格的连接方式的查询性能对比

环境: 数据量100万 Ignite2.5 Windows10 8g jdbc方式连接 import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; i......

仔仔1993 ⋅ 26分钟前 ⋅ 0

收集自网络的wordpress 分页导航的代码教程(全网最全版)

wordpress 分页导航是用来切换文章的一个功能,添加了 wordpress 分页导航后,用户即可自由到达指定的页面数浏览分类文章,而这样的一个很简单功能却有很多朋友在用插件:WP-PageNavi,插件的...

Rhymo-Wu ⋅ 42分钟前 ⋅ 0

微服务 WildFly Swarm 入门

Hello World 就像前面章节中的其他框架一样,我们希望添加一些基本的 Hello-world 功能,然后在其上逐步添加更多的功能。让我们从在我们的项目中创建一个 HolaResources 开始。您可以使用您的...

woshixin ⋅ 49分钟前 ⋅ 0

Maven的安装和Eclipse的配置

1. 下载Maven 下载地址 2. 解压压缩包,放到自己习惯的硬盘中 此处我将其放到了 D:\Tools 目录下。 3. 配置环境变量 右键此电脑 -> 属性 -> 高级系统设置 -> 环境变量。 在系统变量中新建,变...

影狼 ⋅ 56分钟前 ⋅ 0

python pip使用国内镜像的方法

国内源 清华:https://pypi.tuna.tsinghua.edu.cn/simple 阿里云:http://mirrors.aliyun.com/pypi/simple/ 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/ 华中理工大学:http://......

良言 ⋅ 57分钟前 ⋅ 0

对于url变化的spa应该如何使用微信jssdk

使用vue单页面碰上微信jssdk config验证失败的坑。第一次成功 之后切换页面全部失败,找到了解决方法,第一次验证成功后保存验证信息 切换页面时验证信息直接拿来用,加一个wx.error() 失败时...

孙冠峰 ⋅ 今天 ⋅ 0

Spring Cloud Gateway 一般集成

SCF发布,带来很多新东西,不过少了点教程,打开方式又和以前的不一样,比如这个SCG,压根就没有入门指导,所以这里写一个,以备后用。 一、集成 pom.xml <dependency> <groupI...

kut ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部