实验环境:

三主三从,从负责备份.

192.168.2.201 6381
192.168.2.201 6382
192.168.2.202 6381
192.168.2.202 6382
192.168.2.203 6381
192.168.2.203 6382

  三台机器,每台机器两个实例,总共6个实例。

1.创建文件夹

[root@localhost ~]# mkdir -p /usr/local/redis-cluster/6381
[root@localhost ~]# mkdir -p /usr/local/redis-cluster/6382

2.解压编译安装redis

[root@localhost softwares]# tar -zxvf redis-5.0.3.tar.gz
[root@localhost softwares]# cd redis-5.0.3/ [root@localhost softwares]# make MALLOC=libc PREFIX=/usr/local/redis-cluster/6381 install
[root@localhost softwares]# make MALLOC=libc PREFIX=/usr/local/redis-cluster/6382 install

3. 修改配置文件

bind 0.0.0.0                        // 测试环节,任何地址都可连接
port 6381 // 修改成对应的端口号
daemonize yes // 后台运行
pidfile /var/run/redis_6381.pid // pid文件
logfile "/usr/local/redis-cluster/6381/redis_6381.log" // 日志
dir "/usr/local/redis-cluster/6381"
appendonly yes // 开启 aop 备份
appendfsync always // 每写一条 备份 一次
cluster-enabled yes // 开启 Redis Cluster
cluster-config-file nodes-6381.conf // 记录集群信息,不用手动维护,Redis Cluster 会自动维护
cluster-node-timeout 15000 // Cluster 超时时间
cluster-require-full-coverage no // 只要有结点宕机导致16384个槽没全被覆盖,整个集群就全部停止服务,所以一定要改为no

4. 启动redis

[root@Node201 6381]# cd /usr/local/redis-cluster/6381
[root@Node201 6381]# bin/redis-server redis.conf 分别在每台机器上启动两个。
复制配置文件到其他机器:
[root@Node201 6381]# scp /usr/local/redis-cluster/6381/redis.conf 192.168.2.202:/usr/local/redis-cluster/6381/.
[root@Node201 6381]# scp /usr/local/redis-cluster/6381/redis.conf 192.168.2.203:/usr/local/redis-cluster/6381/. [root@Node201 6382]# scp /usr/local/redis-cluster/6382/redis.conf 192.168.2.202:/usr/local/redis-cluster/6382/.
[root@Node201 6382]# scp /usr/local/redis-cluster/6382/redis.conf 192.168.2.203:/usr/local/redis-cluster/6382/. 

5. 创建集群

[root@Node201 src]# /home/softwares/redis-5.0.3/src/redis-trib.rb create --replicas 1 192.168.2.201:6381 192.168.2.201:6382 192.168.2.202:6381 192.168.2.202:6382 192.168.2.203:6381 192.168.2.203:6382
报错:

因为新版本不用ruby了,改用c语言实现了。所以只能用redis-cli 了。所以不用再安装ruby了。

 

[root@Node201 src]# redis-cli --cluster create 192.168.2.201:6381 192.168.2.201:6382 192.168.2.202:6381 192.168.2.202:6382 192.168.2.203:6381 192.168.2.203:6382 --cluster-replicas 1
出现下面的截图说明创建成功了。

6.进入集群

[root@Node201 6381]# bin/redis-cli -c -h 192.168.2.201 -p 6381

7. 高可用验证

注:当某个master shutdown后,他的slot会自动分给其他活着的master,并且从slave中选举出新的master。

redis cluster 安装配置的更多相关文章

  1. redis的安装配置

    主要讲下redis的安装配置,以及以服务的方式启动redis 1.下载最新版本的redis-3.0.7  到http://redis.io/download中下载最新版的redis-3.0.7 下载后 ...

  2. 浅谈Redis及其安装配置

    一.Redis的介绍 二.Redis的安装配置 三.Redis的配置文件说明 四.Redis的简单操作 简介: Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型. ...

  3. redis cluster安装部署(测试环境)

    redis 应用于web前端,做缓存和数据存取的速度是挺可观的,最近看了一些资料,手痒了,就弄了一个测试环境,两台方案,试用一下. ##Redis 集群部署## 一,方案调研: 参考博客: http: ...

  4. Laravel 5.1中 Redis 的安装配置及基本使用教程

    关于Redis的介绍我们在之前Laravel 缓存配置一节中已有提及,Redis是一个开源的.基于内存的数据结构存储器,可以被用作数据库.缓存和消息代理.相较Memcached而言,支持更加丰富的数据 ...

  5. Redis的安装配置及简单集群部署

    最近针对中铁一局项目,跟事业部讨论之后需要我们的KF平台能够接入一些开源的数据库,于是这两天研究了一下Redis的原理. 1. Redis的数据存储原理及简述 1.1Redis简述 Redis是一个基 ...

  6. mysql cluster 安装配置方案

    mysql cluster (mysql 集群)安装配置方案   一.准备 1.准备服务器 计划建立有5个节点的MySQL CLuster体系,需要用到5台服务器,但是我们做实验时没有这么多机器,可以 ...

  7. Linux下Redis的安装配置

    环境: centos7  PHP7 1.切到准备安装的目录 cd /usr/local 2.下载Redis wget http://download.redis.io/redis-stable.tar ...

  8. Linux系统下Redis缓存安装配置

    Redis是一个高性能的key-value数据库,现时越来越多企业与应用使用Redis作为缓存服务器.楼主是一枚JAVA后端程序员,也算是半个运维工程师了.在Linux服务器上搭建Redis,怎么可以 ...

  9. Centos7:Redis的安装,配置及使用

    安装依赖与环境 yum install gcc-c++ 解压缩redis 编译,进入redis源码目录 make 安装 make install PREFIX=/usr/local/redis 注:P ...

随机推荐

  1. extentreports报告插件与testng集成

    前段时间在群里有人说了下用这个插件来生成测试报告,发现生成的报告非常不错.就下来学习了一下,并集成到了testng上,下面来分享一下: ExtentReports (by Anshoo Arora) ...

  2. 乐字节Java学习01-Java语言概述,Java发展前景,Java的特点

    从这篇文章开始,小乐准备写一整系列的Java学习文章,一步一步带您进入Java的神奇世界! 这是第一篇:Java语言概述以及Java的发展前景 1.SUN公司介绍 SUN公司全称是Stanford U ...

  3. webstorm 2019.1.3 破解

    2019.11.28日,已过期,出门右转 https://blog.csdn.net/ft_sunshine/article/details/92065158 1.修改host文件,末尾添加 0.0. ...

  4. Max coverage disjoint intervals

    Assume you have k<=10^5 intervals [a_i, b_i] \in [1,10^18] (some of them may overlap), and you ne ...

  5. sqlserver交换数据行中的指定列

    <!-- 次序上移下移 --> <update id="upOrDown" parameterType="java.util.Map"> ...

  6. 希尔排序——C语言

    希尔排序 希尔排序是插入排序的一种,又称“缩小增量排序”,希尔排序是直接插入排序算法的一种更高效的改进版本,关于插入排序可以看下这篇随笔:插入排序——C语言 (图片来源:https://www.cnb ...

  7. Typora 的使用

    一. Typora的markdown语法 1.标题 使用简单的ctr+数字健,就可以快速完成各种级别的标题 #一阶标题 或者快捷键Ctrl+1 ##二阶标题 或者快捷键Ctrl+2 ##二阶标题 或者 ...

  8. AtCoder Grand Contest 040 B - Two Contests

    传送门 一看就感觉很贪心 考虑左端点最右的区间 $p$ 和右端点最左的区间 $q$ 如果 $p,q$ 属于同一个集合(设为 $S$,另一个集合设为 $T$),那么其他的区间不管是不是在 $S$ 都不会 ...

  9. linux下通过vim编辑文件的方法

    一般来说是通过指令进入文件的编辑页面: vi [filename] 此时进入的是一般指令模式,然后可以直接移动光标对内容进行修改. 修改完成后,使用Esc 按键退出编辑模式. 此时回到的还是一般指令模 ...

  10. 第八讲,TLS表(线程局部存储)

    一丶复习线程相关知识 首先讲解TLS的时候,需要复习线程相关知识,  (thread local storage ) 1.了解经典同步问题 首先我们先写一段C++代码,开辟两个线程去跑,看看会不会出现 ...