云服务器搭建redis主从复制以及哨兵模式(附踩坑记录)
云服务器搭建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
主机的部分信息:

从机的部分信息:

在主机中测试,发现可以进行读和写,在从机中测试,发现只能读不能写。
这样主从复制就搭建完毕
搭建哨兵模式
先创建一个配置文件,命名为sentinel.conf
在配置文件中加入一段代码:
如果之前的服务器都设有密码则需要 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表示 :当一个哨兵主观认为主机断开,就可以客观认为主机故障,然后开始选举新的主机。
启动哨兵
redis-sentinel sentinel.conf

将主机shutdown

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

6381端口的主机变为了6380

再将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主从复制以及哨兵模式(附踩坑记录)的更多相关文章
- Redis——(主从复制、哨兵模式、集群)的部署及搭建
Redis--(主从复制.哨兵模式.集群)的部署及搭建 重点: 主从复制:主从复制是高可用redis的基础,主从复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复. 哨兵和集群都是 ...
- Linux基于Docker的Redis主从复制、哨兵模式搭建
本教程基于CentOS7,开始本教程前,请确保您的Linux系统已安装Docker. 1.使用docker下载redis镜像 docker pull redis 安装完成后,使用docker imag ...
- redis学习三,Redis主从复制和哨兵模式
Redis主从复制 java架构师项目实战,高并发集群分布式,大数据高可用,视频教程 1.Master可以拥有多个slave 2.多个slave可以连接同一个Master外,还可以连接到其他的slav ...
- Redis主从复制、哨兵模式
1.部署主从 环境:主IP:10.0.0.15,端口6379;从IP:10.0.0.16,端口6379. 原理:基于RDB持久化的功能来实现主从复制的功能. a.linux-redis1(10.0.0 ...
- redis 主从复制和哨兵模式(二)
Redis 主从复制 为了分担单机 redis 的数据服务压力,需要进行读写分离,所以搭建 redis 的主从结构,主节点负责写,从节点负责读,主节点定期把数据同步到从节点. 配置主从 # 配置文件中 ...
- Redis主从复制配置+哨兵模式
架构设计: master:s0 slave:s1.s2 主机映射信息如下: 192.168.32.100 s0 192.168.32.101 s1 192.168.32.102 s2 1.安装Redi ...
- Redis主从复制之哨兵模式(sentinel)
介绍:反客为主的自动版,能够后台监控主机是否故障,如果故障了根据投票数自动将从库转换为主库 调整结构:6379带着80.81 自定义的/myredis目录下新建sentinel.conf文件,名字绝不 ...
- 使用三台云服务器搭建真正的Redis集群
三台云服务器搭建redis集群# 今天花了一天的时间弄集群redis:遇到了很多坑,从头开始吧 环境讲解: 两台配置:1核2G,另一台:1核1G: 操作系统:Centos 7.6 Redis:3.2. ...
- redis的主从复制和哨兵模式
Redis主从复制是什么? 行话:也就是我们所说的主从复制,主机数据更新后根据配置和策略, 自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主 Redis主从复制 ...
- redis主从复制和哨兵机制
redis主从复制和哨兵机制 技术标签: redis 1.redis主从复制(master/slave模式) 主数据库可以进行读写操作,当写操作导致数据发生变化时会自动将数据同步给从数据库.而一般情况 ...
随机推荐
- 运用C#编写Http服务器
什么是HTTP服务器 Web服务器是指驻留于因特网上某种类型计算机的程序.当Web浏览器(客户端)连到服务器上并请求文件时,服务器将处理该请求并将文件反馈到该浏览器上,附带的信息会告诉浏览器如何查看该 ...
- 博客神器Gridea
博客神器Gridea Gridea 温故而知新 Gridea 最早叫 Hve Notes ,开发者为了更易读和好记,重新命名为 Gridea,支持 Windows 和 Mac 平台,他的基础界面非常的 ...
- centos7.2下配置DNS服务器
https://baijiahao.baidu.com/s?id=1748980460185046641&wfr=spider&for=pc 1.安装bind(服务器) yum -y ...
- 使用moment获取本周、前n周、后n周开始结束日期以及动态计算周数
原文地址 https://blog.csdn.net/qq_43432158/article/details/124200343 项目中有一个需求:需要根据学期时间动态的计算出该学期有多少周 通过上网 ...
- 看K线学炒股(8.5)
郑煤机,这只票之前我亏损拿着,昨日理性分析是要打开上涨空间了,毕竟下半年要挖煤,挖煤要煤机,业绩预期就不会差.好了,亏损票,昨日大涨,清了一些,今日大涨八个点清仓.既然分析是打开上涨空间了,那就应该是 ...
- [Github]获取github ID号
[Github]获取github ID号 https://api.github.com/users/ + 你的账户名称 实例:我github账号叫iBoundary. https://api.gith ...
- JS中有关闭包的相关内容及介绍
1 var obj = (function (arg) { 2 // 这里就是一个简单的闭包,将局部变量 test和函数fn1 return出去 3 // 这样obj就可以拿到函数内部定义的变量在函数 ...
- C++实现链式表示多项式加法运算
#include<iostream>#include<cstdlib>using namespace std;#define MAXSIZE 100#define OK 1#d ...
- Java数组之冒泡排序【重点】
冒泡排序 冒泡排序是最为出名的排序算法之一,总共有八大排序! 冒泡的代码还是相当简单的,两层循环,外层冒泡轮数,里层依次比较. 我们看到嵌套循环,应该立马就可以得出这个算法的时间复杂度为O(n2). ...
- Web Dynpro for ABAP(15):Print
3.20 Print WDA调用浏览器打印界面 1.创建Print按钮,绑定事件PRINT; 2.实现ONACTIONPRINT事件: method ONACTIONPRINT. DATA:l_api ...