云服务器搭建redis主从复制以及哨兵模式(附踩坑记录)

踩坑记录见最后

搭建一主两从:

  • 在根目录下任意新建一个目录/myredis来存放配置文件:

  • 将我们常用的redis.conf文件拷贝到该目录下:

  • 创建三个配置文件,分别对应不同端口的redis服务:
    主机的配置文件
    由于我之前使用的是RDB的方式持久化,因此这里只需要更改dbfilename “dump6379.rdb”

    include /myredis/redis.conf
    pidfile "/var/run/redis_6379.pid"
    port 6379
    dbfilename "dump6379.rdb"

    两个从机的配置文件
    注意!这里的replicaof 127.0.0.1 6380 如果将127.0.0.1修改为服务器的ip地址,则一定要在安全组中将该服务器的对应的6380,6381端口放行!!建议初学者这里直接使用127.0.0.1,否则后面会有麻烦!

    如果有设置密码,则需要加masterauth 你的密码

    include /myredis/redis.conf
    pidfile "/var/run/redis_6380.pid"
    port 6380
    dbfilename "dump6380.rdb"
    replicaof 127.0.0.1 6380
    masterauth 你的密码
  • 以不同的配置文件分别启动redis-server,可以开三个窗口能更方便的检测变换。

  • 以不同的端口号启动redis-cli

  • 在不同的redis客户端查看各个redis的对应信息:
    使用命令info replication
    主机的部分信息:

    从机的部分信息:

  • 在主机中测试,发现可以进行读和写,在从机中测试,发现只能读不能写。

这样主从复制就搭建完毕

搭建哨兵模式

  1. 先创建一个配置文件,命名为sentinel.conf

  2. 在配置文件中加入一段代码:
    如果之前的服务器都设有密码则需要 sentinel auth-pass mymaster (你的密码),如果没有设置密码则不需要该句

    sentinel monitor mymaster 127.0.0.1 6379 1
    sentinel auth-pass mymaster (你的密码)

    ​ 该Sentinel监控的master(主服务器)的名字叫做mymaster,地址为127.0.0.1:6379

    ​ 数字1表示 :当一个哨兵主观认为主机断开,就可以客观认为主机故障,然后开始选举新的主机。

  3. 启动哨兵

    redis-sentinel sentinel.conf

  4. 将主机shutdown

  5. 此时在查看两个从机:
    ​ 6380端口对应的redis已经变成了主机

    ​ 6381端口的主机变为了6380

  6. 再将6379启动

    ​ 6379:发现6379变成了6380的从机!新皇登基!

踩坑记录!

主从复制:

  • 如果redis的配置文件设置了requiredpass,则在配置从服务器的时候,配置文件需要带上masterauth 你的密码

哨兵模式:

  • 如果之前的服务器都设有密码则在写sentinel.conf的时候需要 加上sentinel auth-pass mymaster (你的密码),如果没有设置密码则不需要加。如果不加的话,在开启哨兵模式之后可能无法检测到从服务器。
  • 如果redis.conf 保护模式在关闭(protected-mode no),则注释掉ip访问限制(注释掉bind 127.0.0.1)
  • 如果redis.conf 保护模式在开启(protected-mode yes),则添加需要的ip访问限制 (bind 需要的ip)
  • 在配置主从复制的时候,如果配置从服务器的主服务器IP地址的时候,一定要将服务器的安全组或者防火墙的对应的端口号都打开,否则将不能切换主服务器!
  • 在shutdown主服务器之后,哨兵需要等一会才能检测到。

云服务器搭建redis主从复制以及哨兵模式(附踩坑记录)的更多相关文章

  1. Redis——(主从复制、哨兵模式、集群)的部署及搭建

    Redis--(主从复制.哨兵模式.集群)的部署及搭建 重点: 主从复制:主从复制是高可用redis的基础,主从复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复. 哨兵和集群都是 ...

  2. Linux基于Docker的Redis主从复制、哨兵模式搭建

    本教程基于CentOS7,开始本教程前,请确保您的Linux系统已安装Docker. 1.使用docker下载redis镜像 docker pull redis 安装完成后,使用docker imag ...

  3. redis学习三,Redis主从复制和哨兵模式

    Redis主从复制 java架构师项目实战,高并发集群分布式,大数据高可用,视频教程 1.Master可以拥有多个slave 2.多个slave可以连接同一个Master外,还可以连接到其他的slav ...

  4. Redis主从复制、哨兵模式

    1.部署主从 环境:主IP:10.0.0.15,端口6379;从IP:10.0.0.16,端口6379. 原理:基于RDB持久化的功能来实现主从复制的功能. a.linux-redis1(10.0.0 ...

  5. redis 主从复制和哨兵模式(二)

    Redis 主从复制 为了分担单机 redis 的数据服务压力,需要进行读写分离,所以搭建 redis 的主从结构,主节点负责写,从节点负责读,主节点定期把数据同步到从节点. 配置主从 # 配置文件中 ...

  6. Redis主从复制配置+哨兵模式

    架构设计: master:s0 slave:s1.s2 主机映射信息如下: 192.168.32.100 s0 192.168.32.101 s1 192.168.32.102 s2 1.安装Redi ...

  7. Redis主从复制之哨兵模式(sentinel)

    介绍:反客为主的自动版,能够后台监控主机是否故障,如果故障了根据投票数自动将从库转换为主库 调整结构:6379带着80.81 自定义的/myredis目录下新建sentinel.conf文件,名字绝不 ...

  8. 使用三台云服务器搭建真正的Redis集群

    三台云服务器搭建redis集群# 今天花了一天的时间弄集群redis:遇到了很多坑,从头开始吧 环境讲解: 两台配置:1核2G,另一台:1核1G: 操作系统:Centos 7.6 Redis:3.2. ...

  9. redis的主从复制和哨兵模式

    Redis主从复制是什么? 行话:也就是我们所说的主从复制,主机数据更新后根据配置和策略, 自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主 Redis主从复制 ...

  10. redis主从复制和哨兵机制

    redis主从复制和哨兵机制 技术标签: redis 1.redis主从复制(master/slave模式) 主数据库可以进行读写操作,当写操作导致数据发生变化时会自动将数据同步给从数据库.而一般情况 ...

随机推荐

  1. Beaver解析代码反向生成语法文件

    背景 Beaver是一款LALR的语法生成工具,现在有一个反编译项目的需求,需要将Beaver语法文件编译后的代码反向生成语法文件的需求,不去评论需求多么傻逼,直接干 设计 flowchart 语法文 ...

  2. js常用代码整理2

    引用js <script type="text/javascript" src="js/jquery-1.11.2.min.js"></scr ...

  3. SSH远程服务器时报错 /bin/bash : Permission denied

    SSH远程服务器时报错 /bin/bash : Permission denied 今日接到用户那边的报障,/bin/bash : Permission denied报错,用户使用的是具有sudo权限 ...

  4. Linux firewall 命令

    常用命令 开启端口命令 firewall-cmd --zone=public--add-port=443/tcp --permanent --zone  #作用域 --add-port=80/tcp ...

  5. error NU1301: Failed to retrieve information about 'volo.abp.cli' from remote source 'https://www.myget.org/feed/Packages/aspnetcoremodules/FindPackagesById()?id='volo.abp.cli'&semVerLevel=2.0.0'.

    today i come across an error when install the abp from the command line after refer to https://githu ...

  6. python学习之路---基础概念扩展:变量,表达式,算法,语句,函数,模块,字符串

    对于学过一点编程语言的人,学习python基础知识不难,基本大同小异 本章是根据一本书来学习python的编程(强烈推荐)来记录学习python中的有意思的总结 Python 基础教程(第三版)    ...

  7. SAP 布局编辑器无法使用问题处理

    因一些事情,公司将正式系统的数据拷贝到了开发机,后来在开发中用到了布局编辑器,发现打不开且会报错RFC callback call rejected by whitelist 这个是因为正式机和开发机 ...

  8. laravel qq第三方登录

    QQ互联官网 首先申请成为开发者获取到后面需要的 client_id redirect_uri client_secret 文档资料/SDK及资源下载/SDK下载/PHP SDK 下载下来修改文件修改 ...

  9. vue子组件为父组件属性写值

    父组件调用子组件代码(关键字sync): <importModel :visible.sync="dialogModelVisible"></importMode ...

  10. nebula命令行无法查看配置信息

    版本为nebula2.0.1 正在部署集群,节点数比较多,直接在一个节点配置好配置文件,分发到其他节点, 为了减少后续修改配置文件时再为配置文件添加--local_config=true,所以直接加上 ...