《架构之路Redis系列》如何搭建Redis的主从复制

简介: 本文主要以实际操作为主,希望起到抛砖引玉作用,享叔一步步带你揭开了redis主从复制的神秘面纱,解决工作中所遇到的坑。

一.环境准备

1.redis-3.2.9

2.服务器三台(VMware下的unbutu)都装redis

Master:192.168.247.133

Slave1:192.168.247.134

Slave2:192.168.247.135

二.环境搭建

配置主从复制的两种方式:

(1).在redis.conf中设置slaveof,这种设置属于永久性的

slaveof <masterip> <masterport>

(2).在redis-cli客户端中设置redis服务,这种属于暂时性的,redis重启失效

slaveof <masterip> <masterport>

1.分别在134和135的redis.conf的配置文件配置为133的slave关系,如下图

备注:我这里redis安装到/opt/redis-3.2.9/redis.conf

ed9639e8c60cae5d36a8f45fe971c32cba4796b6

2.上面操作配置好后,分别启动三台机器服务端

$ ./redis-server ../redis.conf

3.然后在分别启动三台机器测试客户端程序

$ cd src
$ ./redis-cli
$ info replication

02a4dedbcdfd1497323fe8d9dec22ad762778b7a

61317951f893ec9ab2bbc43ec7d5bae3021bef78

备注:如果执行上面测试操作不是很顺利,slave服务器启动后报了类似下面错误,可以按我的解决方案尝试下

2552:S 12 Jul 06:40:47.028 * Connecting to MASTER 192.168.247.133:6379
2552:S 12 Jul 06:40:47.029 * MASTER <-> SLAVE sync started
2552:S 12 Jul 06:40:47.029 # Error condition on socket for SYNC: Connection refused

解决方案:

在三台服务器上分别修改文件redis.conf,然后并重启服务。

修改前:

bind 127.0.0.1

修改后:

bind 0.0.0.0

三.测试:

这里面我就做个简单测试吧,主机Master设置,从机Slave取值。

b4b91bdb6c1785e5b4ea69484535e4f9e92da79f

c02e14290c65c972a04e17acd70a4c9040a65d6e

四.总结:

本文主要以实际操作为主,希望起到抛砖引玉作用,享叔一步步带你揭开了redis主从复制的神秘面纱,解决工作中所遇到的坑。

个人博客原文:https://www.xiangquba.cn/2017/07/12/redis-follower-replication/

目录
相关文章
|
7月前
|
缓存 运维 监控
Redis 7.0 高性能缓存架构设计与优化
🌟蒋星熠Jaxonic,技术宇宙中的星际旅人。深耕Redis 7.0高性能缓存架构,探索函数化编程、多层缓存、集群优化与分片消息系统,用代码在二进制星河中谱写极客诗篇。
1358 3
|
8月前
|
存储 监控 NoSQL
Redis高可用架构全解析:从主从复制到集群方案
Redis高可用确保服务持续稳定,避免单点故障导致数据丢失或业务中断。通过主从复制实现数据冗余,哨兵模式支持自动故障转移,Cluster集群则提供分布式数据分片与水平扩展,三者层层递进,保障读写分离、容灾切换与大规模数据存储,构建高性能、高可靠的Redis架构体系。
|
8月前
|
存储 负载均衡 NoSQL
Redis主从复制
在分布式系统中,为解决单点故障和提升性能,常采用Redis主从复制架构。通过将数据复制到多个从节点,实现读写分离、负载均衡及高可用性,同时支持多种拓扑结构以适应不同场景需求。
|
10月前
|
负载均衡 NoSQL Redis
【赵渝强老师】Redis的主从复制集群
Redis主从复制是指将一台Redis服务器的数据复制到其他Redis服务器,实现数据热备份、故障恢复、负载均衡及高可用架构的基础。主节点负责写操作,从节点同步数据并可提供读服务,提升并发处理能力。
316 5
|
9月前
|
存储 NoSQL 算法
Redis的集群架构与使用经验
本文介绍了Redis的集群架构与使用经验,包括主从复制、哨兵集群及Cluster分片集群的应用场景与实现原理。内容涵盖Redis主从同步机制、数据分片存储方式、事务支持及与Memcached的区别,并讨论了Redis内存用尽时的处理策略。适用于了解Redis高可用与性能优化方案。
|
存储 NoSQL Redis
阿里面试:Redis 为啥那么快?怎么实现的100W并发?说出了6大架构,面试官跪地: 纯内存 + 尖端结构 + 无锁架构 + EDA架构 + 异步日志 + 集群架构
阿里面试:Redis 为啥那么快?怎么实现的100W并发?说出了6大架构,面试官跪地: 纯内存 + 尖端结构 + 无锁架构 + EDA架构 + 异步日志 + 集群架构
阿里面试:Redis 为啥那么快?怎么实现的100W并发?说出了6大架构,面试官跪地: 纯内存 + 尖端结构 +  无锁架构 +  EDA架构  + 异步日志 + 集群架构
|
NoSQL 关系型数据库 Redis
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
435 14
|
NoSQL Java 数据处理
基于Redis海量数据场景分布式ID架构实践
【11月更文挑战第30天】在现代分布式系统中,生成全局唯一的ID是一个常见且重要的需求。在微服务架构中,各个服务可能需要生成唯一标识符,如用户ID、订单ID等。传统的自增ID已经无法满足在集群环境下保持唯一性的要求,而分布式ID解决方案能够确保即使在多个实例间也能生成全局唯一的标识符。本文将深入探讨如何利用Redis实现分布式ID生成,并通过Java语言展示多个示例,同时分析每个实践方案的优缺点。
639 8
|
7月前
|
Cloud Native Serverless API
微服务架构实战指南:从单体应用到云原生的蜕变之路
🌟蒋星熠Jaxonic,代码为舟的星际旅人。深耕微服务架构,擅以DDD拆分服务、构建高可用通信与治理体系。分享从单体到云原生的实战经验,探索技术演进的无限可能。
微服务架构实战指南:从单体应用到云原生的蜕变之路