LINUX:关于Redis集群的节点分配
文章来源: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集群的节点分配的更多相关文章
- 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 ...
- (转)高性能网站架构之缓存篇—Redis集群增删节点
标签: 高性能架构集群缓存redis 上一篇文章,我们搭建了Redis-cluster集群,这篇博客跟大家讲一下如何在一个运行的集群上增加节点或者删除节点. Redis集群添加节点 首先我们要新建立一 ...
- Linux配置Redis集群 和 缓存介绍。
// 一.什么是缓存? mybatis一级缓存和二级缓存 mybatis的一级缓存存在哪? SqlSession,就不会再走数据库 什么情况下一级缓存会失效? 当被更新,删除的时候sqlsession ...
- Linux 下Redis集群安装部署及使用详解(在线和离线两种安装+相关错误解决方案)
一.应用场景介绍 本文主要是介绍Redis集群在Linux环境下的安装讲解,其中主要包括在联网的Linux环境和脱机的Linux环境下是如何安装的.因为大多数时候,公司的生产环境是在内网环境下,无外网 ...
- Linux环境redis集群搭建
集群后tomcat context.xml的配置 <!-- 集群配置--> <Valve className="com.radiadesign.catalina.sessi ...
- Redis集群之节点管理
Redis集群一旦启动,就不能轻易删除掉一个节点了. 需要由redis-trib.rg这个ruby脚本行使集群管理的功能.所有的哈希槽都分配于master节点 一.delete master node ...
- Linux 下redis 集群搭建练习
Redis集群 学习参考:https://blog.csdn.net/jeffleo/article/details/54848428https://my.oschina.net/iyinghui/b ...
- LINUX安装REDIS集群
linux安装单机版redis已经在另一篇文章说过了,下边来搞集群,环境是新浪云服务器: redis3.0以后开始支持集群. 前言:redis用什么做集群? 用一个叫redis-trib.rb的rub ...
- Linux 安装Redis<集群版>(使用Mac远程访问)
阅读本文需要先阅读安装Redis<准备> 一 架构细节 所有的redis节点彼此互联(PING-PONG机制) 内部使用二进制协议优化传输速度和带宽 节点的fail是通过集群中超过半数的节 ...
随机推荐
- Jquery | 基础 | 属性过滤选择器
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- h5-21-文件操作-读取文件内容
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 当css样式表遇到层
(附:White-space:pre可以是样式表里卖弄body的属性,作用是保持html源代码的空格与换行,等同<pre>标签.) Css样式表可以通过被封在层里的方式来限制页面所修饰的内 ...
- SecureCRT的配色方法
配色后效果如下: 下面开始配色 1.首先配置成默认模式 2.终端(Terminal)==>仿真(Emulation) 按图中标注进行勾选,勾选完毕点击确认 2.选项(Options)==> ...
- P2192 HXY玩卡片
题目描述 HXY得到了一些卡片,这些卡片上标有数字0或5.现在她可以选择其中一些卡片排成一列,使得排出的一列数字组成的数最大,且满足被90整除这个条件.同时这个数不能含有前导0,即0不能作为这串数的首 ...
- #error和#line使用分析
#error的用法 #error用于生成一个编译错误消息 用法:error message(不需要用双引号包围) #error编译指示字用于自定义程序员特有的编译错误,消息类似的 #warning用于 ...
- React-Native 开发问题整理
1.内嵌WebView,点击输入框后页面不自动上滚 <activity android:name=".MainActivity" android:label="@s ...
- NestedScrollView嵌套RecycleView发生的小问题
1.解决方法:嵌套滑动不激活. recycleView.setNestedScrollingEnable(false); 这样做有个弊端,RecycleView的item会一次性加载完,不管是否显示, ...
- What is Scalability?
Scalability is a system's ability to process more workload, with a proportional increase in system r ...
- 字符串循环右移-c语言
一个长度为len的字符串,对其循环右移n位 [期望]char str[] = "abcdefg";右移3次后,变成"efgabcd" [思路] 思路1. 如果用 ...