0030redis主从复制以及哨兵模式的搭建
------------------------------redis主从备份以及哨兵模式----------------------------------------------------------
1、 在根目录/下新建myredis目录,将redis解压缩目录下的/opt/redis-3.0.4下的redis.conf配置文件拷贝到/myredis下,需要拷贝3份,分别命名为redis6379.conf、redis6380.conf、redis6381.conf,如下图:

2、 编辑以上3个配置文件,修改如下几项:
1) daemonize(后台运行)
2) pidfile(保存生成的pid的文件的位置)
3) port(访问端口)
4) logfile(日志文件位置+名称)
5) slaveof(做为谁的从机,master不用配置该项)
其中主库redis6379.conf配置如下:
1) daemonize yes
2) pidfile /var/run/redis6379.pid
3) port 6379
4) logfile "/data/logs/redis6379.log"
5) 不配置slaveof
从库1 redis6380.conf配置如下:
1) daemonize yes
2) pidfile /var/run/redis6380.pid
3) port 6380
4) logfile "/data/logs/redis6380.log"
5) slaveof 127.0.0.1 6379
从库2 redis6381.conf配置如下:
6) daemonize yes
7) pidfile /var/run/redis6381.pid
8) port 6381
9) logfile "/data/logs/redis6381.log"
10) slaveof 127.0.0.1 6379
3、 创建日志文件目录
mkdir -p /data/logs
4、 启动主库服务,再分别启动两个丛库服务
redis-server /myredis/redis6379.conf
redis-server /myredis/redis6380.conf
redis-server /myredis/redis6381.conf
5、 查看服务是否启动成功
ps -ef | grep redis |grep -v grep

6、 启动3个客户端,分别连接6379、6380、6381服务,并查看主从关系
其中6379如下:
redis-cli -p 6379 客户端连接6379服务
info replication 查看主从关系

6380如下:

6381如下:

7、 主库(master) 6379中添加数据,并分别在丛库(slave)6380和6381中查看是否有数据,相当于读写分离(主写从读)



8)测试在丛库写数据,会提示丛库是只读的,没有写入的权限

9)停止主机,并查看从机的主从复制信息



主机停止的情况下,两个从机仍然是从机,且显示主机状态是down,不会选举其中一个做为主机,相当于无法再进行写操作了。
10)重新启动主机,并在主机中写数据,查看从机是否还能否查询到数据,发现从机仍能查询到数据,说明主机重启的情况下也仍能进行主从同步
----------------------------------至此,代表主从配置成功-------------------------------------------------
-----------------------------------------------redis哨兵模式----------------------------------------------------
1、 复制redis解压缩目录下的sentinel.conf文件到/myredis目录下
cp /opt/redis-3.0.4/sentinel.conf /myredis/sentinel6379.conf
2、 进入/myredis 目录下并编辑sentinel6379.conf文件

修改为sentinel monitor mymaster 127.0.0.1 6379 1
语法为:sentinel monitor <master-name> <ip> <redis-port> <最少几个哨兵任务主库已死>
3、 启动哨兵
redis-sentinel /myredis/sentinel6379.conf

代表已监控6379为master,6380和6381为slave
4、 关闭6379,模拟主机故障,查看哨兵日志

以上日志,说明哨兵监控到6379挂掉了,选举6381做为新的master,将6380重新做为6381的slave,并且6379修复好重启后也将做为6381的slave
5、 分别在6381和6380上查看主从关系


以上信息说明现在确实是6381是主库,6380是丛库
6、 测试在6381上新增数据,在6380上是否能够查询到
6381新增hash数据

6380查询

说明6381设置内容,6380确实可以做为丛库查询到数据
7、 重启6379服务,并查看6379、6380、6381的主从关系
6379信息如下:

6380信息如下:

6381信息如下:

以上信息说明6379启动后确实做为了6381的丛库
8、 查看6379中的数据与6381的数据是否一致
6381数据如下:

6379数据如下:

以上数据说明6379启动后确实做为了6381的丛库,且自动从6381进行了数据同步
至此,哨兵模式配置完毕。
若有理解不到之处,望指正!
0030redis主从复制以及哨兵模式的搭建的更多相关文章
- Linux基于Docker的Redis主从复制、哨兵模式搭建
本教程基于CentOS7,开始本教程前,请确保您的Linux系统已安装Docker. 1.使用docker下载redis镜像 docker pull redis 安装完成后,使用docker imag ...
- Redis——(主从复制、哨兵模式、集群)的部署及搭建
Redis--(主从复制.哨兵模式.集群)的部署及搭建 重点: 主从复制:主从复制是高可用redis的基础,主从复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复. 哨兵和集群都是 ...
- redis的主从复制和哨兵模式
Redis主从复制是什么? 行话:也就是我们所说的主从复制,主机数据更新后根据配置和策略, 自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主 Redis主从复制 ...
- linux 下Redis 5.0主从复制(一主二从)哨兵模式的搭建
文档结构如下: 一.环境说明: 作用 IP地址 端口 操作系统版本 安装目录 哨兵文件 主库 172.16.10.80 6379 Redhat 6.7 /redis5.0/redis-5.0.0 Se ...
- redis集群sentinel哨兵模式的搭建与实际应用
参考资料:https://blog.csdn.net/men_wen/article/details/72724406 之前环境使用的keepalived+redis vip集群模式,现在我们服务切换 ...
- Redis主从复制、哨兵模式
1.部署主从 环境:主IP:10.0.0.15,端口6379;从IP:10.0.0.16,端口6379. 原理:基于RDB持久化的功能来实现主从复制的功能. a.linux-redis1(10.0.0 ...
- redis学习三,Redis主从复制和哨兵模式
Redis主从复制 java架构师项目实战,高并发集群分布式,大数据高可用,视频教程 1.Master可以拥有多个slave 2.多个slave可以连接同一个Master外,还可以连接到其他的slav ...
- Redis主从复制配置+哨兵模式
架构设计: master:s0 slave:s1.s2 主机映射信息如下: 192.168.32.100 s0 192.168.32.101 s1 192.168.32.102 s2 1.安装Redi ...
- redis: 主从复制和哨兵模式(十三)
redis 主从复制 最低要求是一主二从(一个主机和两个从机) 主机才能写 从机只能读 只要从机连接到主机 数据就会全量复制到从机 环境配置(同一台机器) 1:配置文件 redis.conf配置如下: ...
随机推荐
- 【OpenCV开发】OpenCV3后IPLimage转换成MAT的问题
IplImage* img1 = cvCreateImage(cvGetSize(resizeRes), IPL_DEPTH_8U, 1);//创建目标图像 Mat test = img1; 报错 ...
- 【视频开发】【CUDA开发】FFMPEG硬件加速-nvidia方案
1.目标 <1>显卡性能参数: <2>方案可行性: 2.平台信息 2.1.查看当前显卡信息 命令: lspci |grep VGA 信息: 01:00.0 VGA com ...
- Go语言中的值类型和引用类型
一.值类型和引用类型值类型:int.float.bool和string这些类型都属于值类型,使用这些类型的变量直接指向存在内存中的值,值类型的变量的值存储在栈中.当使用等号=将一个变量的值赋给另一个变 ...
- vs中调试程序查看变量在内存中的内容的方法
vs中调试程序 查看变量在内存中的内容的方法 https://blog.csdn.net/guojg1988/article/details/42922149 原文链接:http://www.sows ...
- 在 Mac 系统下安装 PyCharm 的方法
首先,进入 PyCharm 的官网,PyCharm: Python IDE for Professional Developers by JetBrains. 如上图所示,直接点击DOWNLOAD N ...
- python json模块(15)
JSON 的全称是 JavaScript Object Notation,即 JavaScript 对象符号,它是一种轻量级.跨平台.跨语言的数据交换格式,其设计意图是把所有事情都用设计的字符串来表示 ...
- 不借助其他任何软件防止QQ被盗的小技巧
分享一个小技巧(防止QQ被盗号): 在登录的时候前面加个0,点击登录,如果显示账号不存在,是因为你没有在添加或注册账号这儿登录,也就是切换账号.PC端也可以,如下图: ...
- 链表习题(2)-一个集合用带头结点的单链表L表示,编写算法删除其值最大的结点。
/*一个集合用带头结点的单链表L表示,编写算法删除其值最大的结点.*/ /* 算法思想:使用pre,p,premax,max四个指针,pre和p进行比较,premax和max进行最后的删除操作 通过遍 ...
- 基于OpenCV制作道路车辆计数应用程序
基于OpenCV制作道路车辆计数应用程序 发展前景 随着科学技术的进步和工业的发展,城市中交通量激增,原始的交通方式已不能满足要求:同时,由于工业发展为城市交通提供的各种交通工具越来越多,从而加速了城 ...
- SAS学习笔记60 统计SAS实例之T检验
单样本 H0:服从正态分布 P=0.0988>0.05不拒绝H0,服从正态分布 H0:等于140t=-2.14,P=0.0397 P<0.05,拒绝H0,差异有统计学意义 均值x=130. ...