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是通过集群中超过半数的节 ...
随机推荐
- NSA互联网公开情报收集指南:迷宫中的秘密·下
猫宁!!! 参考链接: https://www.nsa.gov/news-features/declassified-documents/assets/files/Untangling-the-Web ...
- 第十六篇 .NET高级技术之序列化
.net framework的类库中提供了三个可以用于序列化和反序列化的类,分别为BinaryFormatter.SoapFormatter和XmlSerializer. BinaryFormatte ...
- hbase-shell + hbase的java api
本博文的主要内容有 .HBase的单机模式(1节点)安装 .HBase的单机模式(1节点)的启动 .HBase的伪分布模式(1节点)安装 .HBase的伪分布模式(1节点)的启动 .HBas ...
- SQL SUM函数内使用CASE函数
- 实例 - 在这个表里进行查询: 查询出如下结果(统计每天的输赢次数): - 开始查询 - 首先创建测试表: CREATE TABLE info( date ), result ) ); 插入测试数 ...
- android 多线程(二)
1. 使用 AsyncTask 实现进度条 package com.test.network; import android.os.AsyncTask; import android.support. ...
- [SDOI2016]模式字符串
Description 给出n个结点的树结构T,其中每一个结点上有一个字符,这里我们所说的字符只考虑大写字母A到Z,再给出长度为m的模式串s,其中每一位仍然是A到z的大写字母.Alice希望知道,有多 ...
- 洛谷 P3400 仓鼠窝
卡常 #pragma GCC optimize(2) #include<cstdio> #include<algorithm> #include<cstring> ...
- PL/SQL笔记(1)-流程控制,循环,异常,块
流程控制 1.If,then,else,elsif(不是elseif) ' then null; endif; 2.Case 简单case表达式: 搜索型Case表达式: 3.goto语句 begin ...
- python工具之exccel模板生成报表
from Db import Db from log import log import xlwt import xlrd from xlutils.copy import copy import s ...
- CF967D Resource Distribution
思路: 在一堆服务器中,资源最少的那一个是“瓶颈”,由此想到贪心思路. 首先对所有服务器按照资源数量c排序,再从头到尾扫描.对每个位置,根据x1和x2计算出两段连续的服务器集合分别分配给A任务和B任务 ...