温馨提示×

centos redis主从怎么配

小樊
43
2026-09-24 03:28:12
栏目: 云计算

下面以 CentOS 7/8 为例,说明 Redis 主从(一主一从 / 一主多从) 的配置方式,适用于 Redis 5/6/7。


一、环境准备

假设:

  • 主节点(Master):192.168.1.10
  • 从节点(Slave):192.168.1.11
  • Redis 端口:6379

两台机器都先安装 Redis:

yum install epel-release -y
yum install redis -y

或源码安装(推荐新版本):

yum install gcc make -y
wget https://download.redis.io/redis-stable.tar.gz
tar xzf redis-stable.tar.gz
cd redis-stable
make
make install

二、配置主节点(Master)

主节点一般不需要特殊配置,只需确保:

1. 修改 redis.conf

vi /etc/redis.conf

关键配置:

bind 0.0.0.0
protected-mode no
port 6379
daemonize yes

生产环境建议设置密码:

requirepass yourpassword

2. 启动 Redis

systemctl enable redis
systemctl start redis

或:

redis-server /etc/redis.conf

三、配置从节点(Slave)

方法一:修改配置文件(推荐)

编辑从节点 redis.conf:

vi /etc/redis.conf
bind 0.0.0.0
port 6379
daemonize yes

# 指定主节点
replicaof 192.168.1.10 6379

# 如果主节点有密码
masterauth yourpassword

启动:

systemctl restart redis

方法二:命令行临时配置(重启失效)

redis-cli
> replicaof 192.168.1.10 6379
> config set masterauth yourpassword

四、验证主从状态

在从节点执行:

redis-cli
> info replication

应看到:

role:slave
master_host:192.168.1.10
master_link_status:up

在主节点执行:

redis-cli
> info replication

应看到:

role:master
connected_slaves:1

五、测试同步

主节点:

redis-cli
> set test hello

从节点:

redis-cli
> get test
"hello"

✅ 同步成功


六、常见问题

1. 主从无法连接

  • 防火墙放行 6379
firewall-cmd --add-port=6379/tcp --permanent
firewall-cmd --reload
  • 关闭 protected-mode 或配置 bind

2. 从节点只读

Redis 从节点默认只读:

replica-read-only yes

3. 一主多从

只需在多个从节点配置相同的:

replicaof 主IP 6379

七、简单架构示意

Master (192.168.1.10)
   |
   +-- Slave1 (192.168.1.11)
   +-- Slave2 (192.168.1.12)

如果你需要:

  • Redis Sentinel 高可用
  • Redis Cluster 集群
  • Docker / K8s 部署

可以继续问我。

0 踩