文档章节

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

captainliu
 captainliu
发布于 2016/07/04 01:23
字数 605
阅读 25
收藏 0
点赞 0
评论 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
博文 94
码字总数 83678
作品 0
昌平
程序员
codis集群部署实战

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

navyaijm2012 ⋅ 2015/04/23 ⋅ 0

redis高可用架构

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

navyaijm2012 ⋅ 2016/02/27 ⋅ 0

Redis 3.0集群(一)

概述 这里只记录操作步骤和集群测试,保证快速搭建集群环境。具体原理请查阅官方文档(中文版): http://redisdoc.com/topic/cluster-tutorial.html http://redisdoc.com/topic/cluster-sp...

仝玉甫 ⋅ 2015/04/27 ⋅ 1

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

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

场景研读 ⋅ 01/08 ⋅ 0

Redis初探(6)——Redis集群

之前我们所学习的都是Redis的单机版,我们知道Redis之所以读取速度快是因为它是存储在内存中的。 内存的容量是有限的,单台Redis会碰到性能瓶颈,这就需要使用。 一、集群原理 1.1 集群架构 ...

yuanlaijike ⋅ 04/08 ⋅ 0

这可能是最全的 Redis 集群方案介绍了

这可能是最全的 Redis 集群方案介绍了 原创 2016-06-01 曾健生 运维帮 由于Redis出众的性能,其在众多的移动互联网企业中得到广泛的应用。Redis在3.0版本前只支持单实例模式,虽然现在的服务...

fdhay ⋅ 2016/06/02 ⋅ 0

TDCG/springboot-jedisCluster

#springboot-jedisCluster 项目主框架采用springboot,介绍redis集群安装及redis3.0安装方式以及和jedisCluster结合使用的方法! ##Redis 3.0 集群搭建 虚拟机安装 开启两个虚拟机 ,分别在两...

TDCG ⋅ 2016/10/24 ⋅ 0

Redis主从配置

主从配置 首先正常安装并配置两个redis服务,master上需要添加如下配置: port port logfile logfile 其中port为master服务器的端口,logfile为master的日志输出地址及日志文件名。 然后修改...

zmf ⋅ 2015/06/18 ⋅ 0

redis2.8版本之前怎么实现集群

What's new in Redis 3.0 compared to Redis 2.8? Redis Cluster: a distributed implementation of a subset of Redis.我们从官网看到,redis3.0正式支持集群,请教各位大神,那2.8之前的版......

GreatQing ⋅ 2015/08/24 ⋅ 1

企业实战-KeepAlived+Redis+Haproxy实现主从热备、负载均衡、秒级切换

最近公司生产环境需要做一个Redis+Keepalived+Haproxy的集群架构,分别用六个端口,实现多路复用,最终实现主从热备、负载均衡、秒级切换。 一、部署Redis集群 首先用两台虚拟机模拟6个节点,...

一盏烛光 ⋅ 2017/06/20 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

sbt网络问题解决方案

http://dblab.xmu.edu.cn/blog/maven-network-problem/

狐狸老侠 ⋅ 8分钟前 ⋅ 0

大数据,必须掌握的10项顶级安全技术

我们看到越来越多的数据泄漏事故、勒索软件和其他类型的网络攻击,这使得安全成为一个热门话题。 去年,企业IT面临的威胁仍然处于非常高的水平,每天都会看到媒体报道大量数据泄漏事故和攻击...

p柯西 ⋅ 51分钟前 ⋅ 0

Linux下安装配置Hadoop2.7.6

前提 安装jdk 下载 wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.7.6/hadoop-2.7.6.tar.gz 解压 配置 vim /etc/profile # 配置java环境变量 export JAVA_HOME=/opt/jdk1......

晨猫 ⋅ 57分钟前 ⋅ 0

crontab工具介绍

crontab crontab 是一个用于设置周期性被执行的任务工具。 周期性执行的任务列表称为Cron Table crontab(选项)(参数) -e:编辑该用户的计时器设置; -l:列出该用户的计时器设置; -r:删除该...

Linux学习笔记 ⋅ 今天 ⋅ 0

深入Java多线程——Java内存模型深入(2)

5. final域的内存语义 5.1 final域的重排序规则 1.对于final域,编译器和处理器要遵守两个重排序规则: (1)在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用...

江左煤郎 ⋅ 今天 ⋅ 0

面试-正向代理和反向代理

面试-正向代理和反向代理 Nginx 是一个高性能的反向代理服务器,但同时也支持正向代理方式的配置。

秋日芒草 ⋅ 今天 ⋅ 0

Spring 依赖注入(DI)

1、Setter方法注入: 通过设置方法注入依赖。这种方法既简单又常用。 类中定义set()方法: public class HelloWorldOutput{ HelloWorld helloWorld; public void setHelloWorld...

霍淇滨 ⋅ 昨天 ⋅ 0

马氏距离与欧氏距离

马氏距离 马氏距离也可以定义为两个服从同一分布并且其协方差矩阵为Σ的随机变量之间的差异程度。 如果协方差矩阵为单位矩阵,那么马氏距离就简化为欧氏距离,如果协方差矩阵为对角阵,则其也...

漫步当下 ⋅ 昨天 ⋅ 0

聊聊spring cloud的RequestRateLimiterGatewayFilter

序 本文主要研究一下spring cloud的RequestRateLimiterGatewayFilter GatewayAutoConfiguration @Configuration@ConditionalOnProperty(name = "spring.cloud.gateway.enabled", matchIfMi......

go4it ⋅ 昨天 ⋅ 0

Spring clound 组件

Spring Cloud技术应用从场景上可以分为两大类:润物无声类和独挑大梁类。 润物无声,融合在每个微服务中、依赖其它组件并为其提供服务。 Ribbon,客户端负载均衡,特性有区域亲和、重试机制。...

英雄有梦没死就别停 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部