文章来源:http://www.cnblogs.com/hello-tl/p/7808268.html

  根据上述  Redis集群搭建:http://www.cnblogs.com/hello-tl/p/7804225.html 的步骤  今天来学习一下添加节点 / 节点重新分配

0、查看Redis nodes节点 / 退出Redis集群

目前是 7000 - - - - 7500 六个节点
# redis-cli -c -p 7000 cluster nodes //查看REdis nodes节点
28ec5253bab7d4a9e578dfcb750529bca08e0bfd 127.0.0.1:7300 slave 23927b9e69d3bc2e6bab95baf599ab4d38ec4bfd 0 1510210213694 4 connected
462269d1bcb020c0aa7b95850c1aafacea86cbfc 127.0.0.1:7100 master - 0 1510210212692 2 connected 5461-10922
78762d55924b0c1ba4411caf6d53d1abd88ae5bc 127.0.0.1:7400 slave 462269d1bcb020c0aa7b95850c1aafacea86cbfc 0 1510210215696 5 connected
23927b9e69d3bc2e6bab95baf599ab4d38ec4bfd 127.0.0.1:7000 myself,master - 0 0 1 connected 0-5460
7074b2ada87e0f390204dfda24e5abc9f7391201 127.0.0.1:7200 master - 0 1510210211691 3 connected 10923-16383
ab433002f799d10dbf7f811d84c6ef327fe24d73 127.0.0.1:7500 slave 7074b2ada87e0f390204dfda24e5abc9f7391201 0 1510210214695 6 connected
主----从
7000-7300
7100-7400
7200-7500

1、添加一个Redis nodes节点

# pwd
/home/redis ## 添加一个端口目录 并且吧 redis.conf 复制到 7600文件夹
# mkdir 7600
# cp 7000/redis.conf 7600/
## 修改 7600 redis.conf 文件端口改成7600 ## 运行 7600 实例
# redis-server redis.conf
# ps aux | grep redis 查看7600实例是否成功
root 12513 0.0 0.5 138964 9772 ? Ssl 14:35 0:00 redis-server 127.0.0.1:7000 [cluster]
root 12544 0.0 0.5 138964 9780 ? Ssl 14:39 0:00 redis-server 127.0.0.1:7100 [cluster]
root 12550 0.0 0.5 138964 9772 ? Ssl 14:39 0:00 redis-server 127.0.0.1:7200 [cluster]
root 12554 0.0 0.4 136916 7736 ? Ssl 14:39 0:00 redis-server 127.0.0.1:7300 [cluster]
root 12561 0.0 0.4 136916 7736 ? Ssl 14:39 0:00 redis-server 127.0.0.1:7400 [cluster]
root 12571 0.0 0.4 136916 7748 ? Ssl 14:40 0:00 redis-server 127.0.0.1:7500 [cluster]
root 12610 0.0 0.4 136916 7544 ? Ssl 14:47 0:00 redis-server 127.0.0.1:7600 [cluster]
root 12615 0.0 0.0 112644 964 pts/1 R+ 14:48 0:00 grep --color=auto redis ************************* 添加节点
## 将7000 添加到 7600 节点下边
# pwd
/home/redis/redis-3.2.9/src # ./redis-trib.rb add-node 127.0.0.1:7600 127.0.0.1:7000 ## 重新查看 nodes 节点
# redis-cli -c -p 7000 cluster nodes
28ec5253bab7d4a9e578dfcb750529bca08e0bfd 127.0.0.1:7300 slave 23927b9e69d3bc2e6bab95baf599ab4d38ec4bfd 0 1510210715456 4 connected
462269d1bcb020c0aa7b95850c1aafacea86cbfc 127.0.0.1:7100 master - 0 1510210716458 2 connected 5461-10922
78762d55924b0c1ba4411caf6d53d1abd88ae5bc 127.0.0.1:7400 slave 462269d1bcb020c0aa7b95850c1aafacea86cbfc 0 1510210717460 5 connected
23927b9e69d3bc2e6bab95baf599ab4d38ec4bfd 127.0.0.1:7000 myself,master - 0 0 1 connected 0-5460
43be9c0e09eff614279721803c1ad9b36e06eb77 127.0.0.1:7600 master - 0 1510210720466 0 connected
7074b2ada87e0f390204dfda24e5abc9f7391201 127.0.0.1:7200 master - 0 1510210719463 3 connected 10923-16383
ab433002f799d10dbf7f811d84c6ef327fe24d73 127.0.0.1:7500 slave 7074b2ada87e0f390204dfda24e5abc9f7391201 0 1510210718461 6 connected 主----从
7000-7300
7100-7400
7200-7500
7600
## 增加了新的节点之后,这个新的节点可以成为主节点或者是从节点
## 把这个节点变成主节点,使用redis-trib程序,将集群中的某些哈希槽移动到新节点里面, 这个新节点就成为真正的主节点了。

2、移动一个Redis nodes节点

********************** 方式一
## 将 7600 节点移动到 7000 节点下
# redis-cli -c -p 7600 cluster replicate 23927b9e69d3bc2e6bab95baf599ab4d38ec4bfd
OK
## 重新查看 nodes 节点
# redis-cli -c -p 7000 cluster nodes
28ec5253bab7d4a9e578dfcb750529bca08e0bfd 127.0.0.1:7300 slave 23927b9e69d3bc2e6bab95baf599ab4d38ec4bfd 0 1510211580854 4 connected
462269d1bcb020c0aa7b95850c1aafacea86cbfc 127.0.0.1:7100 master - 0 1510211579852 2 connected 5461-10922
78762d55924b0c1ba4411caf6d53d1abd88ae5bc 127.0.0.1:7400 slave 462269d1bcb020c0aa7b95850c1aafacea86cbfc 0 1510211582859 5 connected
23927b9e69d3bc2e6bab95baf599ab4d38ec4bfd 127.0.0.1:7000 myself,master - 0 0 1 connected 0-5460
43be9c0e09eff614279721803c1ad9b36e06eb77 127.0.0.1:7600 slave 23927b9e69d3bc2e6bab95baf599ab4d38ec4bfd 0 1510211583860 1 connected
7074b2ada87e0f390204dfda24e5abc9f7391201 127.0.0.1:7200 master - 0 1510211578851 3 connected 10923-16383
ab433002f799d10dbf7f811d84c6ef327fe24d73 127.0.0.1:7500 slave 7074b2ada87e0f390204dfda24e5abc9f7391201 0 1510211581857 6 connected 主----从
7000-7300 7600
7100-7400
7200-7500
********************** 方式二
## 将 7600 节点移动到 7000 节点下
# redis-cli -c -p 7600
# cluster replicate 23927b9e69d3bc2e6bab95baf599ab4d38ec4bfd
# exit
OK
## 重新查看 nodes 节点
# redis-cli -c -p 7000 cluster nodes
28ec5253bab7d4a9e578dfcb750529bca08e0bfd 127.0.0.1:7300 slave 23927b9e69d3bc2e6bab95baf599ab4d38ec4bfd 0 1510211580854 4 connected
462269d1bcb020c0aa7b95850c1aafacea86cbfc 127.0.0.1:7100 master - 0 1510211579852 2 connected 5461-10922
78762d55924b0c1ba4411caf6d53d1abd88ae5bc 127.0.0.1:7400 slave 462269d1bcb020c0aa7b95850c1aafacea86cbfc 0 1510211582859 5 connected
23927b9e69d3bc2e6bab95baf599ab4d38ec4bfd 127.0.0.1:7000 myself,master - 0 0 1 connected 0-5460
43be9c0e09eff614279721803c1ad9b36e06eb77 127.0.0.1:7600 slave 23927b9e69d3bc2e6bab95baf599ab4d38ec4bfd 0 1510211583860 1 connected
7074b2ada87e0f390204dfda24e5abc9f7391201 127.0.0.1:7200 master - 0 1510211578851 3 connected 10923-16383
ab433002f799d10dbf7f811d84c6ef327fe24d73 127.0.0.1:7500 slave 7074b2ada87e0f390204dfda24e5abc9f7391201 0 1510211581857 6 connected 主----从
7000-7300 7600
7100-7400
7200-7500

文章来源:http://www.cnblogs.com/hello-tl/p/7808268.html

LINUX:关于Redis集群的节点分配的更多相关文章

  1. redis 集群新增节点,slots槽分配,删除节点, [ERR] Calling MIGRATE ERR Syntax error, try CLIENT (LIST | KILL | GET...

    redis reshard 重新分槽(slots) https://github.com/antirez/redis/issues/5029 redis 官方已确认该bug redis 集群重新(re ...

  2. (转)高性能网站架构之缓存篇—Redis集群增删节点

    标签: 高性能架构集群缓存redis 上一篇文章,我们搭建了Redis-cluster集群,这篇博客跟大家讲一下如何在一个运行的集群上增加节点或者删除节点. Redis集群添加节点 首先我们要新建立一 ...

  3. Linux配置Redis集群 和 缓存介绍。

    // 一.什么是缓存? mybatis一级缓存和二级缓存 mybatis的一级缓存存在哪? SqlSession,就不会再走数据库 什么情况下一级缓存会失效? 当被更新,删除的时候sqlsession ...

  4. Linux 下Redis集群安装部署及使用详解(在线和离线两种安装+相关错误解决方案)

    一.应用场景介绍 本文主要是介绍Redis集群在Linux环境下的安装讲解,其中主要包括在联网的Linux环境和脱机的Linux环境下是如何安装的.因为大多数时候,公司的生产环境是在内网环境下,无外网 ...

  5. Linux环境redis集群搭建

    集群后tomcat context.xml的配置 <!-- 集群配置--> <Valve className="com.radiadesign.catalina.sessi ...

  6. Redis集群之节点管理

    Redis集群一旦启动,就不能轻易删除掉一个节点了. 需要由redis-trib.rg这个ruby脚本行使集群管理的功能.所有的哈希槽都分配于master节点 一.delete master node ...

  7. Linux 下redis 集群搭建练习

    Redis集群 学习参考:https://blog.csdn.net/jeffleo/article/details/54848428https://my.oschina.net/iyinghui/b ...

  8. LINUX安装REDIS集群

    linux安装单机版redis已经在另一篇文章说过了,下边来搞集群,环境是新浪云服务器: redis3.0以后开始支持集群. 前言:redis用什么做集群? 用一个叫redis-trib.rb的rub ...

  9. Linux 安装Redis<集群版>(使用Mac远程访问)

    阅读本文需要先阅读安装Redis<准备> 一 架构细节 所有的redis节点彼此互联(PING-PONG机制) 内部使用二进制协议优化传输速度和带宽 节点的fail是通过集群中超过半数的节 ...

随机推荐

  1. JAVA多线程(二) 并发队列和阻塞队列

    github代码地址:https://github.com/showkawa/springBoot_2017/tree/master/spb-demo/spb-brian-query-service/ ...

  2. 莫队初探(不带修/例题极少)By cellur925

    因为今天考到莫队裸题了嘤嘤嘤...而我这样的蒟蒻肯定不会这样的高端算法啊QAQ.于是暴力水了40分qwq. 正如上文所说,我实在太菜了,于是学习莫队也只是学习了最简单的不带修普通莫队,如果我能苟到省选 ...

  3. (九)SpringBoot整合redis框架

    二:添加Redis依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactI ...

  4. 限制属性绑定(__slots__)

    正常情况下,当定义了一个class并创建实例后,可以给该实例绑定任何属性和方法,这就是动态语言的灵活性 属性和方法是可以直接定义在class中的,但动态绑定允许在程序运行的过程中动态给class加上属 ...

  5. iOS UITableView设置tableHeaderView时发生约束错误 UIView-Encapsulated-Layout-Height UIView-Encapsulated-Layout-Width

    在将UITableView的tableHeaderView设置为我自己创建的View的时候, 当我为这个自定义View添加约束之后启动调试, 然后符号断点UIViewAlertForUnsatisfi ...

  6. the little schemer 笔记(0)

    the little schemer 笔记 Z.X.L 2012年08月13日 五项规则 car的规则car只对非空列表有定义. cdr的规则cdr只对非空列表有定义.任何非空列表的cdr是另外一个列 ...

  7. 线段树(单点更新) HDOJ 2795 Billboard

    题目传送门 /* 主要利用线段树求区间最值,sum[]代表位置可用空间 每次找到最大值的位置 功能:查询最靠前能容纳广告的位置 */ #include <cstdio> #include ...

  8. 由浅入深一个Demo带你认识Restful风格的架构

    java作为一门后端语言,其厉害之处在于web,大家比较熟知的各种网络应用,java都能做,那么在这个移动优先的时代,如何继续发挥java的强大之处呢? 通常是让java作为一个app的服务端,为ap ...

  9. Java Script 学习笔记(一)

    示例如下: JavaScript-警告(alert 消息对话框) 我们在访问网站的时候,有时会突然弹出一个小窗口,上面写着一段提示信息文字.如果你不点击“确定”,就不能对网页做任何操作,这个小窗口就是 ...

  10. innerHTML的性能问题

    看到一遍文章When innerHTML isn’t Fast Enough,反应了innerHTML在操作量大了以后的性能下降的问题. 并且给出了一个replaceHTML的函数 function  ...