实验环境:

三主三从,从负责备份.

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. Linux由于物理节点故障导致的异常重启-Case1

    问题描述:Linux VM异常重启,需要排查问题原因 排查结果: 查询Messages日志获取到的信息 虚拟机内核版本: Jun :: test01 kernel: Linux version -.e ...

  2. [转帖]Linux内核剖析(一)Linux的历史

    Linux内核剖析(一)Linux的历史 https://www.cnblogs.com/alantu2018/p/8991158.html Unix操作系统 Unix的由来 汤普逊和里奇最早是在贝尔 ...

  3. JDBC 注册驱动,获取连接

    jdbc 动力节点视频教程 JDBC编程六步 1.注册驱动(作用:告诉Java程序,即将要连接的是哪个品牌的数据库) 2.获取连接 (表示JVM进程和数据库进程之间的通道打开了,属于进程间的通信,重量 ...

  4. windows下编译libevent(2.1.8)及使用

    一:获取libevent github地址:https://github.com/libevent/libevent/releases 下载2.1.8稳定版 二:编译libevent 我是用的visu ...

  5. set object is not JSON serializable 解决方式

    python return json的时候报错: set object is not JSON serializable 解决方式,增加一个将set转为list的函数: def set_default ...

  6. 1254: 盒子游戏(Java)

    WUSTOJ 1254: 盒子游戏 参考博客 叶剑飞Victor的博客 盒子游戏--爱程序网 原理是从上面博客看的,我另外补充了几幅图,方便理解 Description 有两个相同的盒子,其中一个装了 ...

  7. python 创建es mapping

    import requests def get_(): url = "http://127.0.0.1:9200/indextest/_mapping?pretty" ss = r ...

  8. 谷歌(Google)学术镜像,谷歌镜像

    谷歌(Google)学术镜像,谷歌镜像 2019-09-03 15:32:26 Hinton-wu 阅读数 6743 文章标签: 谷歌google学术镜像 更多 分类专栏: 其他   版权声明:本文为 ...

  9. 洛谷 P1047 校门外的树(待完善)

    链接:https://www.luogu.org/problemnew/show/P1047 题目: 题目描述 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是11米.我们可以把马路看 ...

  10. Linux基本命令 vi操作和插件

    基本命令 vim命令 常用插件 基本命令 查看Tomcat日志: tail -n 20 -f catalina.out 查看指定列表: find ./ -name 'ser*' 搜索指定文件: loc ...