前言·

  这里分为三篇文章来写我是如何重新搭建redis主从集群和哨兵集群的及原本服务器上有单redis如何通过升级脚本来实现redis集群。(redis结构:主-从(备)-从(备))

  至于为什么要搭建redis主从集群,最开始是单redis,把一些常用的数据缓存到redis中,避免直接查数据库,从而对数据库造成压力,查redis缓存也读写数据比数据库更快,因为一个是读写内存,一个是读写硬盘存储。

然后随着实际项目中,考虑到数据量的加大,高并发,有出现过redis连接失败,从而类似缓存雪崩。所以后期更改了架构,把redis集群,并应用自动容灾切换,避免redis宕机后直接报错。至于什么是缓存雪崩、缓存击穿、缓存穿透,请参考下图:

一、redis安装部署

  1.1 安装

  官网下载地址:https://redis.io/download,这里我们下载5.0.12,直接点击下载.

  或直接命令下载:wget http://download.redis.io/releases/redis-5.0.12.tar.gz

  然后进入解压文件目录,使用make命令对解压的redis文件进行编译,如下:

  cd /home/zmoon/redis-5.0.12

  make

  编译成功后,进入src文件夹执行make install 进行Redis安装

注:如出现/bin/sh: cc: command not found错误,是因为没有安装 gcc 环境,使用命令yum install gcc安装 gcc 环境即可。

  1.2 配置文件统一管理

  先找到redis-5.0.12目录下的redis.conf文件,修改redis.conf文件,下面是修改的相关参数:

  bind 0.0.0.0

port 6379

protected-mode no

logfile ./redis.log

daemonize yes

requirepass password&123

masterauth password&123

  首先看一下redis.conf 配置文件中的各个参数,详解如下:

  然后是新建个sentinel.conf文件

  修改sentinel.conf配置:

  port 26379
  protected-mode no
  daemonize yes
  logfile "/home/zmoon/redis-5.0.12/sentinel.log"
  sentinel deny-scripts-reconfig yes
  sentinel monitor mymaster 127.0.0.1 6379 2
  sentinel down-after-milliseconds mymaster 3000
  sentinel failover-timeout mymaster 18000
  sentinel parallel-syncs mymaster 1
  sentinel auth-pass mymaster password&123

  sentinel.conf详细配置如下图:

  配置文件改好后,我这边为了方便,写了个脚本来修改从服务器上跟主服务器配置不同的地方

  里面会有当前节点跟当前主节点,当前节点:redis部署的当前服务器IP,当前主节点:需要把3个redis 其中一个当为主redis的服务器IP。

  主从3台服务器的脚本执行完了会发现,从服务器上面的redis.conf会比主服务器的redis.conf多一行配置,如:

  replicaof 127.0.1.7 6379

  当配置文件已经修改完了后,就可以启动redis服务了。

  1.3 启动redis

  cd /home/zmoon/redis-5.0.12/bin

  ./redis-server /home/zmoon/redis-5.0.12/etc/redis.conf

  主从3台redis都启动好后,登陆redis 如图:

  输入密码:

  查看redis主从关系

  可以看到当前服务器的redis角色为master,下面有两个从68跟65,我们再到65上看信息:

  此时,可以看见,主-从-从架构已经搭建完成。

一、全新安装搭建redis主从集群的更多相关文章

  1. docker搭建redis主从集群和sentinel哨兵集群,springboot客户端连接

    花了两天搭建redis主从集群和sentinel哨兵集群,讲一下springboot客户端连接测试情况 redis主从集群 从网上查看说是有两种方式:一种是指定配置文件,一种是不指定配置文件 引用地址 ...

  2. 超详细,多图文介绍redis集群方式并搭建redis伪集群

    超详细,多图文介绍redis集群方式并搭建redis伪集群 超多图文,对新手友好度极好.敲命令的过程中,难免会敲错,但为了截好一张合适的图,一旦出现一点问题,为了好的演示效果,就要从头开始敲.且看且珍 ...

  3. 02.Redis主从集群的Sentinel配置

    1.集群环境 1.Linux服务器列表 使用4台CentOS Linux服务器搭建环境,其IP地址如下: 192.168.110.100 192.168.110.101 192.168.110.102 ...

  4. 【精】搭建redis cluster集群,JedisCluster带密码访问【解决当中各种坑】!

    转: [精]搭建redis cluster集群,JedisCluster带密码访问[解决当中各种坑]! 2017年05月09日 00:13:18 冉椿林博客 阅读数:18208  版权声明:本文为博主 ...

  5. Docker 搭建 Redis Cluster 集群环境

    使用 Docker 搭建 Redis Cluster,最重要的环节就是容器通信的问题,这一块我们在之前的文章中已经给大家解决了<Docker 网络模式详解及容器间网络通信>,本篇文章主要练 ...

  6. Docker Compose 搭建 Redis Cluster 集群环境

    在前文<Docker 搭建 Redis Cluster 集群环境>中我已经教过大家如何搭建了,本文使用 Docker Compose 再带大家搭建一遍,其目的主要是为了让大家感受 Dock ...

  7. 基于Dokcer搭建Redis集群搭建(主从集群)

    最近陆陆续续有不少园友加我好友咨询 redis 集群搭建的问题,我觉得之前写的这篇 <基于Docker的Redis集群搭建> 文章一定是有问题了,所以我花了几分钟浏览之前的文章总结了下面几 ...

  8. linux环境下redis安装(redis伪集群搭建)

    redis在linux环境下搭建 1.创建目录 [root@192 local]# mkdir /usr/local/redis 2.下载redis,并解压 [root@192 local]# wge ...

  9. redis —主从&&集群(CLUSTER)

    REDIS主从配置 为了节省资源,本实验在一台机器进行.即,在一台机器上启动两个端口,模拟两台机器. 机器准备: [root@adailinux ~]# cp /etc/redis.conf /etc ...

随机推荐

  1. 业务网关之AK中心建设

    啥是AK AK(Access Key)是一种身份证明,它解决了"资源的使用者是谁"这个问题,比如在生活中,身份证可以证明你是你,而在云计算或程序中,AK能证明你是这个应用的拥有者. ...

  2. 洋桃电子之STM32

    1.ARM内核与分类 作者:知乎用户链接:https://www.zhihu.com/question/52915983/answer/258507276来源:知乎著作权归作者所有.商业转载请联系作者 ...

  3. devicePixelRatio 那些事儿

    devicePixelRatio 那些事儿 设备像素比 window.devicePixelRatio 是设备上物理像素和设备独立像素的比例,即公式表示为:window.devicePixelRati ...

  4. 使用mockjs模拟后端返回的json数据;

    前后端分离开发中最重要的一部就是前后端联调,很多时候后端进度是跟不上前端的,所以需要前端模拟一些数据进行调试,这样前端的进度就可以加快了.后端的小哥哥别打我: 使用mockjs可以很方便的模拟出想要的 ...

  5. LC-349

    Given two integer arrays nums1 and nums2, return an array of their intersection. Each element in the ...

  6. k8s pod故障分类与排查

    一.Pod故障状态基本有几种Pod状态 处于PendingPod状态 处于WaitingPod状态 处于ContainerCreatingPod状态 ImagePullBackOffPod状态 Cra ...

  7. MongoDB 提供的工具

    MongoDB 提供的工具 官网 https://www.mongodb.com/ 工具 MongoDB 提供了一些工具,: MongoDB Compass: MongoDB数据库可视化工具(类似PL ...

  8. Ant Design Pro V5 与 IdentityServer 实现 Password 模式的登录

    最近处于休息状态,想趁着休息时间,为自己做一个后台. 后端框架选用了 Abp.之前公司使用了一些自研的框架,但由于人力资源有限,后期框架的升级及维护都是比较耗时,这次干脆直接使用Abp,即省心又能快速 ...

  9. 动手动脑3&课堂作业(四则运算与继承)

    先上结果 Java程序会先把所有的静态模块提取出来优先执行 四则运算主程序代码 1 import java.util.Scanner; 2 3 4 public class main { 5 publ ...

  10. 如何为我的VUE项目编写高效的单元测试--Jest

    Unit Testing(单元测试)--Jest 一个完整的测试程序通常由几种不同的测试组合而成,比如end to end(E2E)测试,有时还包括整体测试.简要测试和单元测试.这里要介绍的是Vue中 ...