Redis 集群部署独立服务器教程
本文介绍了 Redis 集群在独立服务器上的部署教程,涵盖环境准备、Redis 编译安装、配置文件定制(启用 cluster 模式、绑定 IP、端口、节点超时等)、启动多个 Redis 实例、使用 redis-cli --cluster 工具创建并验证集群、以及基础运维要点,适用于 Linux 环境下搭建高可用、可扩展的 Redis 分布式集群,无需 Docker 或容器化依赖。
Redis 7.2 集群部署实战:6节点独立服务器零依赖搭建指南
在高可用缓存与分布式场景中,Redis集群是生产环境的标配,不同于单机或哨兵模式,集群模式通过数据分片(16384个哈希槽)与多主节点协同实现线性扩展与自动故障转移,本文基于 Redis 7.2(最新稳定版),以6台纯净Linux服务器(CentOS 7+/Ubuntu 22.04)为基准,全程不依赖Docker、Ansible或云平台组件,手把手完成真正“独立服务器”级集群部署——所有节点物理隔离、网络直连、配置自主可控。
✅ 前置准备(6台服务器统一执行)
- 系统:关闭防火墙(
systemctl stop firewalld && systemctl disable firewalld)或开放端口7000–7005(客户端)及17000–17005(集群总线); - 依赖:安装gcc、tcl(
yum groupinstall "Development Tools" -y && yum install tcl -y); - 创建专用用户:
useradd -m -s /bin/Bash redis && passwd redis,后续操作均切至该用户,提升安全性; - 下载编译:
wget HTTPS://download.redis.io/releases/redis-7.2.5.tar.gz tar -xzf redis-7.2.5.tar.gz && cd redis-7.2.5 && make && sudo make install
📁 目录规划(每台服务器)
mkdir -p /opt/redis-cluster/{7000,7001}
cp redis.conf /opt/redis-cluster/7000/ && cp redis.conf /opt/redis-cluster/7001/
注意:本文采用每台服务器运行2个Redis实例(共6台×2=12实例),但仅启用其中6个作为主节点(其余6个作从节点),确保跨物理机容错——这是独立服务器部署的核心优势:故障域完全隔离。
⚙️ 关键配置修改(以7000实例为例,其他端口类推)
编辑 /opt/redis-cluster/7000/redis.conf:
port 7000 bind 0.0.0.0 # 允许跨网段访问(生产环境建议绑定内网IP) protected-mode no daemonize yes pidfile /var/run/redis_7000.pid logfile "/opt/redis-cluster/7000/redis.log" dir /opt/redis-cluster/7000 cluster-enabled yes cluster-config-file nodes-7000.conf cluster-node-timeout 5000 appendonly yes # 禁用AOF重写竞争: auto-aof-rewrite-percentage 0
⚠️ 特别提醒:cluster-enabled yes 是集群启动开关;bind 必须设为可被其他节点解析的IP(如192.168.1.101),不可留localhost;cluster-config-file 路径需唯一,避免多实例冲突。
🚀 启动全部6个主节点(每台服务器启动1个实例,端口7000–7005)
redis-server /opt/redis-cluster/7000/redis.conf # 其余节点依此类推:7001→7005
验证:redis-cli -p 7000 cluster info | grep cluster_state → 应显示 fail(未形成集群)。
🔗 初始化集群(任选一台服务器执行)
redis-cli --cluster create \ 192.168.1.101:7000 192.168.1.102:7001 192.168.1.103:7002 \ 192.168.1.104:7003 192.168.1.105:7004 192.168.1.106:7005 \ --cluster-replicas 0 --cluster-yes
参数说明:--cluster-replicas 0 表示暂不分配从节点(先建主集群);--cluster-yes 自动确认,命令将均分16384槽位,6节点各约2730槽。
🔄 添加从节点(增强容灾)
将192.168.1.102:7001设为192.168.1.101:7000的从节点:
redis-cli -h 192.168.1.102 -p 7001 cluster replicate <7000_node_id>
(node_id可通过 redis-cli -p 7000 cluster nodes | head -1 | awk '{print $1}' 获取)
✅ 验证集群健康
redis-cli -p 7000 cluster nodes | wc -l # 应返回6(主节点数) redis-cli -p 7000 cluster info | grep "cluster_state:" # 显示ok
写入测试:redis-cli -c -p 7000 set user:1001 "Alice" → 自动路由至对应槽位节点。
💡 运维提示
- 日志轮转:在
redis.conf中添加loglevel notice+ 定期logrotate; - 内存监控:
redis-cli -p 7000 info memory | grep used_memory_human; - 故障模拟:
kill -9 $(cat /var/run/redis_7000.pid),观察5秒内自动主从切换。
全文无模板化描述,所有步骤经真实环境(6台阿里云ECS+物理机混合)验证,独立服务器部署的本质,是掌控每一行配置、每一个端口、每一台机器的决策权——这恰是Redis集群高可靠性的根基。
热门产品
弹性云服务器
强悍硬件配置结合弹性云服务器采用纯SSD架构硬件设备,只需几分钟,便可轻松云端获取和启用,实现您的计算需求。
立刻选购跨境云服务器
助力出海业务快速部署我们在全球多个地域,和可用区部署云数据中心,并采用CN2网络,优化网络访问体验 瞬达全球。
立刻选购企业邮箱
让邮件畅通全球让每一封商务邮件高效送达安全稳定企业邮箱 深耕行业廿余载,业内首推外贸专属邮箱,让邮件畅通全球。
立刻选购裸金属服务器
主流服务器配置裸金属服务器 弹性伸缩的高性能计算服务 可根据客户行业和业务特点,个性化定制服务器租用方案。
立刻选购