Redis在Linux上的集群如何配置
导读:Redis 在 Linux 上的集群配置指南 一 环境准备与安装 准备至少 6 台 Linux 主机(也可单机多端口),安装 Redis 5+(推荐 6.x/7.x)。以 CentOS 为例:安装编译依赖 gcc,下载解压 Redis 源...
Redis 在 Linux 上的集群配置指南
一 环境准备与安装
- 准备至少 6 台 Linux 主机(也可单机多端口),安装 Redis 5+(推荐 6.x/7.x)。以 CentOS 为例:安装编译依赖 gcc,下载解压 Redis 源码,执行 make & & make install;Ubuntu/Debian 可直接用包管理器安装。确保节点间 网络互通、系统时间大致同步。为便于演示,下文使用 3 主 3 从 架构。
二 集群节点配置
- 建议每个节点使用独立目录与端口,开启集群模式与持久化。示例目录与端口:/opt/redis-cluster/node7001 ~ node7006,端口 7001~7006。最小配置示例(redis.conf):
说明:port 7001 bind 0.0.0.0 daemonize yes dir /opt/redis-cluster/node7001 cluster-enabled yes cluster-config-file nodes-7001.conf cluster-node-timeout 5000 appendonly yes # 如启用密码(可选) requirepass yourpassword masterauth yourpassword # 云环境或多网卡建议显式公告地址 cluster-announce-ip < 本机内网或公网IP> cluster-announce-port 7001 cluster-announce-bus-port 17001- 每个节点的 port / dir / cluster-config-file 需与目录和端口一一对应。
- 生产环境建议开启 AOF(appendonly yes),并配置合理超时与密码。
三 启动与创建集群
- 启动所有实例(示例):
for p in 7001 7002 7003 7004 7005 7006; do redis-server /opt/redis-cluster/node${ p} /redis.conf done - 创建集群(推荐方式,自动分配主从与槽位):
说明:redis-cli -a < yourpassword> --cluster create \ 192.168.1.11:7001 192.168.1.12:7002 192.168.1.13:7003 \ 192.168.1.14:7004 192.168.1.15:7005 192.168.1.16:7006 \ --cluster-replicas 1- –cluster-replicas 1 表示每个主节点有 1 个从节点,上述命令将生成 3 主 3 从。
- 如未设置密码,可省略 -a 参数。
- 旧版 Redis(< 5.0)可用 ruby 工具 redis-trib.rb;Redis 5+ 使用内置 redis-cli --cluster。
四 验证与常用运维
- 验证集群状态与节点拓扑:
redis-cli -a < yourpassword> -c cluster info redis-cli -a < yourpassword> -c cluster nodes - 常见运维操作(按需执行):
- 在线添加主节点并迁移槽位:
redis-cli -a < yourpassword> --cluster add-node < new_node_ip:port> < existing_node_ip:port> redis-cli -a < yourpassword> --cluster reshard < existing_node_ip:port> - 添加从节点并指定复制的主节点(在从节点执行):
redis-cli -a < yourpassword> -c 127.0.0.1:7004> CLUSTER REPLICATE < master_node_id> - 删除节点(先迁移槽位/摘除复制,再删除):
redis-cli -a < yourpassword> --cluster del-node < node_ip:port> < node_id> - 重新配置或重建(变更网络/密码/端口等场景):先逐个 SHUTDOWN 节点,调整配置(如 cluster-announce-ip、端口、密码),再按顺序启动并使用 –cluster create 重建或 CLUSTER MEET / CLUSTER ADDSLOTS 逐步恢复。
- 在线添加主节点并迁移槽位:
五 防火墙与网络要点
- 集群总线端口规则:每个节点需要开放 客户端端口 P 与总线端口 P+10000(如 7001/17001)。以 firewalld 为例:
firewall-cmd --permanent --add-port=7001-7006/tcp firewall-cmd --permanent --add-port=17001-17006/tcp firewall-cmd --reload - 云服务器需确保安全组放行上述端口;如启用密码,客户端与服务端需一致配置 requirepass / masterauth。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Redis在Linux上的集群如何配置
本文地址: https://pptw.com/jishu/777684.html
