当前位置:首页 > 问答 > 正文

Redis集群 数据存储 在Mac系统中搭建高可用Redis集群实现数据可靠存储,mac下redis集群安装教程

🔥 Mac下搭建Redis集群:手把手实现高可用数据存储

场景引入
凌晨3点,你正沉浸在代码的海洋中,突然线上服务报警——单机Redis挂了!所有缓存数据瞬间蒸发,用户订单丢失,客服电话被打爆…💥 这时候才明白:单点Redis就像走钢丝,而集群才是你的安全网,今天就用Mac本地环境,带你搭建一个三主三从的高可用Redis集群,从此告别数据裸奔!


📦 准备工作(确认你的Mac有这些)

  1. Homebrew(Mac包管理器)
    # 没有的话先安装
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  2. Redis 7.0+(2025年推荐稳定版)
    brew install redis
  3. Ruby环境(集群管理工具依赖)
    brew install ruby

🛠️ 集群搭建六步走

步骤1:创建集群节点目录

避免单文件夹混乱,为每个节点独立分配空间:

mkdir -p ~/redis-cluster/{7000,7001,7002,7003,7004,7005}

步骤2:配置每个节点的redis.conf

以7000端口为例(其他节点替换端口号即可):

cat <<EOF > ~/redis-cluster/7000/redis.conf
port 7000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
daemonize yes  # 后台运行
EOF

💡 关键参数说明

  • cluster-enabled yes:开启集群模式
  • appendonly yes:数据持久化保障

步骤3:启动所有节点

一键启动6个实例:

Redis集群 数据存储 在Mac系统中搭建高可用Redis集群实现数据可靠存储,mac下redis集群安装教程

for port in {7000..7005}; do
  redis-server ~/redis-cluster/$port/redis.conf
done

✅ 检查是否运行成功:

ps aux | grep redis-server | grep -v grep

步骤4:组建集群

使用Redis自带的redis-cli --cluster create命令:

redis-cli --cluster create \
  127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 \
  127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005 \
  --cluster-replicas 1

👉 注意:这里--cluster-replicas 1表示每个主节点配1个从节点,自动分配主从关系。

步骤5:验证集群状态

redis-cli -p 7000 cluster nodes

看到类似以下输出即成功:

a1b2c3... 127.0.0.1:7000@17000 myself,master - 0 1680000000000 1 connected 0-5460
d4e5f6... 127.0.0.1:7001@17001 master - 0 1680000000000 2 connected 5461-10922
...(其他节点信息)

步骤6:测试数据分片

写入数据自动分配到不同节点:

Redis集群 数据存储 在Mac系统中搭建高可用Redis集群实现数据可靠存储,mac下redis集群安装教程

redis-cli -p 7000 -c  # -c表示以集群模式连接
> set user:1 "Alice"  # 可能被重定向到7001节点
> get user:1

🛡️ 高可用验证(模拟主节点宕机)

  1. 手动关闭7000主节点:
    redis-cli -p 7000 shutdown
  2. 观察从节点7003是否自动升主:
    redis-cli -p 7001 cluster nodes | grep 7003

    如果看到7003角色从slave变为master,恭喜!故障转移成功 🎉


💼 生产环境建议(Mac本地 vs 线上)

  • 本地开发:用Docker模拟多机部署更轻量
  • 线上部署
    • 至少3台物理机分散节点
    • 启用密码认证(requirepass
    • 监控工具推荐:redis-cli --cluster check + Prometheus

通过6个Redis实例组成的集群,你的数据现在拥有:
✔️ 自动分片(数据均匀分布)
✔️ 故障转移(主节点挂掉从节点顶上)
✔️ 持久化保障(AOF防止重启丢数据)

下次再遇到深夜报警,终于可以淡定地喝口咖啡了 ☕️

(注:本文基于Redis 7.2.3版本验证,2025年8月测试通过)

发表评论