Redis(1.13)Redis cluster 分布式集群手动配置
【1】试验环境
结构图如下:
(这里试验没有那么多机器,就用3台机器搭建试验)
redis1是redis集群的一个节点A,上面运行了两个redis实例,7001 7004
redis2是redis集群的一个节点B,上面运行了两个redis实例,7002 7005
redis3是redis集群的一个节点C,上面运行了两个redis实例,7003 7006
-- 试验集群包含 A/B/C A1/B1/C1 6个节点
A、B、C 为主节点对应Redis实例:7001 7002 7003
A1、A2、A3 为主节点的从库,对应Redis实例:7004 7005 7006
-- 交叉构建主从节点,对应关系为
【A > B】 【B>C】 【C>A1】
A:192.168.135.173
B:192.168.135.174
C:192.168.135.175
-- IP与端口分布:
cluster1:
主:192.168.135.173 7001 /data/redis/redis-cluster/nodes-7001/redis.conf
备:192.168.135.174 7005 /data/redis/redis-cluster/nodes-7005/redis.conf
cluster2:
主:192.168.135.174 7002 /data/redis/redis-cluster/nodes-7002/redis.conf
备:192.168.135.175 7006 /data/redis/redis-cluster/nodes-7006/redis.conf
cluster3:
主:192.168.135.175 7003 /data/redis/redis-cluster/nodes-7003/redis.conf
备:192.168.135.175 7004 /data/redis/redis-cluster/nodes-7004/redis.conf
【2】清除现有集群
如果有的话,才做这一步,没有的话,直接下一步【3】即可
(2.1)清理现有数据
#登录集群
redis-cli -c -h 192.168.135.173 -p 7001
#删除数据
flushdb
(2.2)删掉现有集群
#停掉集群节点的redis服务,举例代码如下:
《1》./startall.sh stop 《2》redis-cli -h 192.168.135.173 -p 7001
#删掉集群节点的所有 aof/rdb/pid/nodes.conf,举例代码如下:
rm -rf /data/redis/7001conf/{appendonly.aof,redis.rdb,redis.pid,nodes-7001.conf}
【3】手动配置集群
(3.1)启动各节点的redis服务
案例代码如下:
《1》./startall.sh start 《2》redis-server /data/redis/7001conf/7001redis.conf
(3.2)登录集群,开始握手
redis-cli -p 7001 -h 192.168.135.173 -c
cluster meet 192.168.135.173 7001
cluster meet 192.168.135.173 7004
cluster meet 192.168.135.174 7002
cluster meet 192.168.135.174 7005
cluster meet 192.168.135.175 7003
cluster meet 192.168.135.175 7006
(3.3)查看节点
cluster nodes
#这个时候如果想操作,比如使用set test1 a,会报错 (error) CLUSTERDOWN Hash slot not served,说是还没有分配哈希槽来提供服务。
(3.4)分配 16384个哈希槽
主:
redis-cli -h 192.168.135.173 -p 7001 cluster addslots {0..5461}
redis-cli -h 192.168.135.174 -p 7002 cluster addslots {5462..10922}
redis-cli -h 192.168.135.175 -p 7003 cluster addslots {10923..16383}
(3.5)主从映射
#登录上从库开始复制,利用cluster nodes 查看对应主库的 node_id
(主从对应关系在【0】已经规划好,大致如:7001~7005,7002~7006,7003~7004)
#cluster replicate 7001node_id
redis-cli -h 192.168.135.174 -p
cluster replicate b7fcec9116ec14593e821104fa00ae8019d91054
exit #cluster replicate 7002node_id
redis-cli -h 192.168.135.175 -p
cluster replicate 5de5cda4fb5ad46f1d7a67b75b04946a0c203ff5
exit #cluster replicate 7003node_id
redis-cli -h 192.168.135.173 -p
cluster replicate 77ad3c48f3e8903d369c6190600aadfdbaa1ef20
exit
最终IP、主从、槽位 效果:
Redis(1.13)Redis cluster 分布式集群手动配置的更多相关文章
- CentOS6安装各种大数据软件 第六章:HBase分布式集群的配置
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
- Redis Cluster 分布式集群(下)
Redis Cluster 搭建(工具) 环境准备 节点 IP 端口 节点① 172.16.1.121 6379,6380 节点② 172.16.1.122 6379,6380 节点③ 172.16. ...
- Redis(1.11)Redis4.0.11 cluster 分布式集群搭建
概念与了解:Redis(1.7)Redis高可用架构(理论篇) [0]试验环境 结构图如下: (这里试验没有那么多机器,就用3台机器搭建试验) redis1是redis集群的一个节点A,上面运行了两个 ...
- Redis Cluster 分布式集群(上)
Redis Cluster 介绍 Redis 集群是一个可以在多个Redis节点之间进行数据共享的设施(installation): Redis 集群不支持那些需要同时处理多个键的 Redis 命令, ...
- redis配置cluster分布式集群
#下载最新的redis5. wget http://download.redis.io/releases/redis-5.0.3.tar.gz .tar.gz cd redis- make make ...
- mysql cluster (mysql 集群)安装配置方案(转)
一.准备 1.准备服务器 计划建立有5个节点的MySQL CLuster体系,需要用到5台服务器,但是我们做实验时没有这么多机器,可以只用2台,我就是一台本机,一台虚拟机搭建了有5个节点的MySQL ...
- Hadoop 2.2 YARN分布式集群搭建配置流程
搭建环境准备:JDK1.6,SSH免密码通信 系统:CentOS 6.3 集群配置:NameNode和ResourceManager在一台服务器上,三个数据节点 搭建用户:YARN Hadoop2.2 ...
- 新闻实时分析系统-HBase分布式集群部署与设计
HBase是一个高可靠.高性能.面向列.可伸缩的分布式存储系统,利用Hbase技术可在廉价PC Server上搭建 大规模结构化存储集群. HBase 是Google Bigtable 的开源实现,与 ...
- 新闻网大数据实时分析可视化系统项目——6、HBase分布式集群部署与设计
HBase是一个高可靠.高性能.面向列.可伸缩的分布式存储系统,利用Hbase技术可在廉价PC Server上搭建 大规模结构化存储集群. HBase 是Google Bigtable 的开源实现,与 ...
随机推荐
- Codevs 2482 宝库通道 2007年省队选拔赛安徽
2482 宝库通道 2007年省队选拔赛安徽 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 大师 Master 题目描述 Description 探宝的旅程仍然继续中,由于你的帮助 ...
- 【原创】洛谷 LUOGU P3373 【模板】线段树2
P3373 [模板]线段树 2 题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上x 2.将某区间每一个数乘上x 3.求出某区间每一个数的和 输入输出格式 输入格式: 第 ...
- 【线性代数】Linear Algebra Big Picture
Abstract: 通过学习MIT 18.06课程,总结出的线性代数的知识点相互依赖关系,后续博客将会按照相应的依赖关系进行介绍.(2017-08-18 16:28:36) Keywords: Lin ...
- python 处理 json 四个函数dumps、loads、dump、load的区别
1 .json.dumps() 函数是将一个 Python 数据类型列表(可以理解为字典)进行json格式的编码(转换成字符串,用于传播)eg, dict = {"age": &q ...
- Django基础之Session
1. Session的由来 Cookie虽然在一定程度上解决了“保持状态”的需求,但是由于Cookie本身最大支持4096字节,以及Cookie本身保存在客户端,可能被拦截或窃取,因此就需要有一种新的 ...
- Shichikuji and Power Grid
D. Shichikuji and Power Grid 参考:Codeforces Round #597 (Div. 2) 思路:一个很裸的最小生成树.把建立基站看成是,城市与源点(虚构的)建边.由 ...
- CF427D
CF427D SA的奇技淫巧,其实就是板子. 题意: 给定两个字符串,求最短的满足各只出现一次的连续公共字串 解析: 一般情况下,SA都是用来求最长公共前缀的,好像和这道题所求的最短公共子串没有任何关 ...
- springMVC配置拦截器、过滤器、前端控制器时遇到的问题总结
1.业务场景:使用vuejs+springMVC+spring框架搭建一个mis系统,集成SSO单点登录: 2.遇到问题:使用interceptor拦截器配置SSO单点登录,直接敲域名,或者ip+端口 ...
- 1分钟快速制作漂亮的Html5本地记事本
大家好,以前给大家分享过一个五步骤制作精美的HTML5时钟的文章,点击回顾<五步教你制作漂亮精致的HTML时钟>,还有<一分钟教你如何实现唯美的文字描边>:今天给大家分享一个用 ...
- java TimeUnit 的使用
主要作用 时间颗粒度转换 延时 1.时间颗粒度转换 public long toMillis(long d) //转化成毫秒 public long toSeconds(long d) //转化成秒 ...