文档章节

redis-3.0 集群实现原理与安装

captainliu
 captainliu
发布于 2016/07/04 01:23
字数 605
阅读 25
收藏 0

redis3.0集群

   由多个Redis服务器组成的分布式网络服务集群

    每一个Redis服务器称为节点node,节点之间互相通信,两两相连

    Redis集群无中心节点(当向redis中插入数据时根据算法插入到固定的redis节点上,但是其他节点知道此数据在哪个节点上;当查询这条数据时,随机查询某一个节点,当此节点没有此数据,但是此节点知道数据在哪个节点上,就会将请求跳转到指定的节点上) 

Redis集群节点复制

    redis集群节点都有两种角色可选:主节点master  node ,从节点slave  node。其中主节点用于保存数据,从节点是主节点的复制品,当主节点挂掉,从节点可以马上变为主节点。

redis集群分片

这里集群有固定的槽位slot;

 

Redis集群的搭建

    创建多个主节点

    为每个节点指派槽位slot,将多个节点连接起来,组成一个集群

    槽位分片完成后,集群进入上线状态

    6个节点:3个主节点,每个主节点有一个从节点

1、解压

tar  -zxvf redis-3.0xxx.gz

make  

 make PREFIX=/usr/redis  install

mkdir cluster-test
cd cluster-test
mkdir 7000 7001 7002 7003 7004 7005

 

在7000-7005目录中放入redis.conf
redis.conf内容如下
cluster-enabled yes
port 700x

启动所有服务,要进入子目录启动服务
# cd 700x
# redis-server redis.conf

# ss -tanl | grep 700
 

创建集群
安装目录src中redis-trib.rb完成集群创建
# yum install ruby rubygems -y

redis模块安装
在线安装
# gem install redis
离线安装
https://rubygems.org/gems/redis
# gem install --local redis-3.3.0.gem

 

在安装目录下的src中(指定master   和  slave)
# ./redis-trib.rb create --replicas 1 192.168.47.21:7000 192.168.47.21:7001 192.168.47.22:7002 192.168.47.22:7003 192.168.47.23:7004 192.168.47.23:7005 192.168.47.24:7006 192.168.47.24:7007

 

在  700x/nodes.conf中的信息


1d6e832b7fa603f831703e4c11dc5da66e4fe148 192.168.47.24:7007 slave 4c25e85ba6bec4bee99c9799bcc8415c17017e63 0 1467639177390 8 connected
4c25e85ba6bec4bee99c9799bcc8415c17017e63 192.168.47.23:7004 master - 0 1467639179437 5 connected 4096-8191
b72c561d126bb11cca0a2f0f3aba5d71f8912acc 192.168.47.21:7001 slave 3d333b5de203329d2113d75b1537e2db0a71fce6 1467639182917 1467639175348 3 connected
5a06d5797216709dde5e8acd0fcd3283f24d5fa4 192.168.47.24:7006 master - 0 1467639180462 7 connected 0-4095
7880208eb5ac5555510dc496b3d48b9390f8cf78 192.168.47.23:7005 slave 5a06d5797216709dde5e8acd0fcd3283f24d5fa4 0 1467639179848 7 connected
54f7b1861d7bfd97617058bf0f3c9aaa2cb43280 192.168.47.21:7000 myself,master - 0 0 1 connected 12288-16383
3d333b5de203329d2113d75b1537e2db0a71fce6 192.168.47.22:7002 master - 0 1467639181485 3 connected 8192-12287
be7b1d4eec9c3e7658dad7cdfad17a23a62b1d31 192.168.47.22:7003 slave 54f7b1861d7bfd97617058bf0f3c9aaa2cb43280 0 1467639182508 4 connected
vars currentEpoch 8 lastVoteEpoch 0

 

客户端连接
redis-cli -p 7000 -c
-c 使用集群模式,允许转向

然后进行测试

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
captainliu
粉丝 10
博文 106
码字总数 83678
作品 0
昌平
程序员
codis集群部署实战

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

navyaijm2012
2015/04/23
0
0
RedisCluter集群(一):Redis高可用集群Redis Cluster搭建

原文地址:https://my.oschina.net/lyyjason/blog/1842002 前言: Redis3.0版本之前,可以通过Redis Sentinel(哨兵)来实现高可用 ( HA ),从3.0版本之后,官方推出了Redis Cluster,它的主...

lyyjason
07/07
0
0
redis高可用架构

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

navyaijm2012
2016/02/27
0
0
【干货合集】NoSQL技术体系深度解读系列(一):Redis,从技术原理到最佳实践

2018年开年知识盛会——NoSQL数据库直播大讲堂峰会,将于1月19日、23日、25日与大家见面,阿里云Redis、MongoDB、HBase的15位技术专家、产品专家将给大家带来深度的技术及产品分享。本次峰会...

场景研读
01/08
0
0
redis3.0伪集群安装步骤

Redis 在3.0版本前只支持单实例模式,虽然支持主从模式、哨兵模式部署来解决单点故障。但是数据冗余太大,内存浪费。所以,Redis 在 3.0 版本以后就推出了集群模式。 由于集群至少需要6个节点...

凌晨一点
08/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

移除或自定义 WordPress 仪表盘欢迎面板

第一次登录 WordPress 后台仪表盘页面,默认都会显示 WordPress 的欢迎面板: 如果我们要移除这个面板,在主题的 functions.php 中添加下面的代码即可: 12 //移除 WordPress 仪表盘欢迎面...

james_laughing
21分钟前
0
0
HashMap实现原理及源码分析

HashMap实现原理及源码分析   哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,...

DemonsI
25分钟前
0
0
eggjs学习笔记

快速初始化 生成项目(要求最低的node版本8.x) npm i egg-init -gegg-init egg-example --type=simplecd egg-examplenpm i 启动项目 npm run dev 配置 环境配置会覆盖默认配置 config...

别人说我名字很长
28分钟前
1
0
Winform Timer控件时间间隔

sender as System.Timers.Timer).Interval = 23 * 60 * 60 * 1000.0;//将时间间隔改为23小时,23小时后重新发生timer_Elapsed事件。 //60000:时间间隔1分钟,300000:时间间隔5分钟,600000:...

笑丶笑
29分钟前
0
0
在win10系统下怎样快速切换任务视图

切换窗口:Alt + Tab 任务视图:Win + Tab (松开键盘界面不会消失) 切换任务视图:Win + Ctrl +左/右 创建新的虚拟桌面:Win + Ctrl + D 关闭当前虚拟桌面:Win + Ctrl + F4...

SummerGao
32分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部