我理解的此模式与哨兵模式根本区别:

哨兵模式采用主从复制模式,主和从数据都是一致的、全量数据;

Cluster模式采用数据分片存储,对每个 key 计算 CRC16 值,然后对 16384 取模,可以获取 key 对应的 hash slot,可以这么理解:电脑硬盘分了很多个区,每个分区存储内容都不一样,而每个分区都会有哨兵机制进行监控容灾,每个分区的主分区挂了,对应的从分区会升级为主分区。

此模式优点:可以横向扩展, 只需连接集中某几个节点即可,避免了主从哨兵模式存储瓶颈

===========================================================

根据上篇安装完单机Redis后,下面对单机进行集群

一、将解压后redis文件夹中的redis.conf复制到conf文件夹中(conf文件夹自己随意找个目录创建,我就创建到和解压后redis统计目录中了)

二、因为要起六个redis服务,所以复制将redis.conf复制六次,并改名(端口也可自定义,名称不一定非要这么起,目的是为了区分,官网是每个端口创建了一个文件夹

三、修改每一个复制出来的文件


port 7000 //这个端口等于每个文件名字的端口
cluster-enabled yes //开启集群模式
cluster-config-file nodes-7001.conf //每个节点的配置文件,我就生成到redis/src下了
cluster-node-timeout 5000 //节点失效检测时间
appendonly yes //使用AOF持久化
bind 192.168.1.236 127.0.0.1 //修改bindIp,默认是127.0.0.1 否则ssh无法连接
pidfile /var/run/redis_7000.pid //上一篇搭建单机Redis时,配置了daemonize yes后台运行,所以每个配置文件都要改名字
protected-mode no //关闭保护模式,否则ssh无法连接(可不设置,我为了本地方便)
daemonize yes //后台运行
appendfilename "appendonly_7000.aof" //持久化文件



四、依次启动redis

查看一下是否都启动了,如果没起来检测redis配置文件

五、执行集群分配

redis-cli --cluster create 127.0.0.1:7000 127.0.0.1:7001 \
127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 \
--cluster-replicas 1

(--cluster-replicas 1 这个代表每一个
master有一个slave ,写2的话就是有两个slave)

六、登录某一个节点测试,这时就可以使用项目或者Redis Desktop Manager等客户端连接了

  redis-cli -c -p 7000

七、重新分配集群

将每个节点下aof、rdb、nodes.conf本地备份文件删除,然后重新执行第五步

本次调试配置文件如下

Redis集群-Cluster模式的更多相关文章

  1. redis集群cluster模式搭建

    实验服务器 :192.168.44.139    192.168.44.138  192.168.44.144 在 192.168.44.139上操作: 将redis的包上传的新建的目录newtouc ...

  2. redis单点、redis主从、redis哨兵sentinel,redis集群cluster配置搭建与使用

    目录 redis单点.redis主从.redis哨兵 sentinel,redis集群cluster配置搭建与使用 1 .redis 安装及配置 1.1 redis 单点 1.1.2 在命令窗口操作r ...

  3. Docker快速构建Redis集群(cluster)

    Docker快速构建Redis集群(cluster) 以所有redis实例运行在同一台宿主机上为例子 搭建步骤 redis集群目录清单 . ├── Dockerfile ├── make_master ...

  4. redis集群cluster简单设置

    环境: 这里参考官方使用一台服务器:Centos 7  redis-5.0.4    192.168.10.10 redis集群cluster最少要3个主节点,所以本次需要创建6个实例:3个主节点,3 ...

  5. php操作redis集群哨兵模式

    前段时间项目里正好用到了redis的集群哨兵部署,因为此前并无了解过,所以一脸懵逼啊,查阅了几篇资料,特此综合总结一下,作为记录. 写在前沿:随着项目的扩张,对redis的依赖也越来越大,为了增强re ...

  6. Redis集群-主从模式

    1.架构设计 集群在单台主机上模拟搭建6个节点(3主3从的集群): 2.配置 创建与端口相同的文件夹存储Redis配置文件和持久化文件. 目录如下: 每个节点配置文件如下: 节点1: bind 192 ...

  7. Centos7 安装redis集群哨兵模式

    https://blog.csdn.net/lihongtai/article/details/82826809

  8. Docker-生成镜像、服务搭建(redis集群、kibana、运行项目jar包)、上传镜像至阿里云

    目录 生成自己的镜像 1.下载官方tomcat镜像 2.运行镜像后将webapp目录里新增文件(官方镜像是没有页面的 具体操作见) 3.使用docker ps -a 查看刚刚修改后的容器id 4.执行 ...

  9. 【Redis集群原理专题】分析一下相关的Redis集群模式下的脑裂问题!

    技术格言 世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程. 什么是脑裂 字面含义 首先,脑裂从字面上理解就是脑袋裂开了,就是思想分家了,就是有了两个山头,就是有了 ...

随机推荐

  1. 【以太坊剖析】以太坊虚拟机(EVM)之基本定义

    以太坊虚拟机(EVM) 以太坊虚拟机(Ethereum Virtual Machine,简称EVM)是一个基于栈的虚拟机,基于特定的环境数据,执行一系列的字节代码形式的指令,以修改系统状态.EVM目前 ...

  2. 社交网络分析的 R 基础:(二)变量与字符串

    本章会从 R 语言中最基本的数据类型开始介绍,在此之后就可以开始 R 语言实践了.对社交网络分析而言,我们在处理字符串上所花费的时间要远远大于处理数字的时间,因此本章还会介绍常用的字符串处理操作. 变 ...

  3. 【源码】Redis命令处理过程

    本文基于社区版Redis 4.0.8   1.命令解析 Redis服务器接收到的命令请求首先存储在客户端对象的querybuf输入缓冲区,然后解析命令请求的各个参数,并存储在客户端对象的argv和ar ...

  4. go基础——switch语法

    package main import "fmt" /* switch语法结构: switch 变量名 { case 数值1:分支1 case 数值2:分支2 ... defaul ...

  5. docker基础——1.原理解读

    1. 相关内核知识 docker本质上是宿主机上的进程. 通过namespace实现资源隔离,通过cgroups实现资源限制,通过写时复制机制copy-on-write实现高效文件操作. 依赖kern ...

  6. JavaWeb项目根路径问题

    jsp中获取项目根路径: 方法① 最顶部增加代码: <% String path = request.getContextPath(); String basePath = request.ge ...

  7. Spring Druid多数据源配置

    SpringBoot 多数据源配置 如果需要在一个应用中使用多个数据源,应当如何实现呢,在Spring配置MyBatis中,我们可以看到以下的代码 <!-- mybatis 的SqlSessio ...

  8. Bootstrap提供的CDN服务标签与下载文档

    目录 1.引入Bootstrap提供的CDN服务 1.选择下载Bootstrap CDN 二:下载Bootstrap官方文档 1.进入Bootstrap官网,选择3版本中文档. 1.引入Bootstr ...

  9. netty系列之:可以自动通知执行结果的Future,有见过吗?

    目录 简介 JDK异步缘起 netty中的Executor Future的困境和netty的实现 总结 简介 在我的心中,JDK有两个经典版本,第一个就是现在大部分公司都在使用的JDK8,这个版本引入 ...

  10. 带分数--第四届蓝桥杯省赛C++B/C组

    第四届蓝桥杯省赛C++B/C组----带分数 思路: 1.先枚举全排列 2.枚举位数 3.判断是否满足要求 这道题也就是n=a+b/c,求出符合要求的abc的方案数.进行优化时,可以对等式进行改写,改 ...