0

0

Linux如何部署Redis集群_Linux多节点分片存储与高可用配置【步骤】

冰火之心

冰火之心

发布时间:2026-01-12 14:10:02

|

968人浏览过

|

来源于php中文网

原创

需手动部署6个redis实例(3主3从),配置集群模式、用redis-cli创建集群、验证状态、开放端口并配置systemd服务,最后测试分片与故障转移。

linux如何部署redis集群_linux多节点分片存储与高可用配置【步骤】

如果您计划在Linux环境中构建Redis集群,实现多节点分片存储与高可用性,则需手动配置多个Redis实例并启用集群模式。以下是完成该部署的具体步骤:

一、准备六个独立的Redis实例

Redis集群要求至少三个主节点和三个从节点以满足故障转移与数据分片的基本条件。每个实例需运行在不同端口,并拥有独立的数据目录与配置文件

1、创建六个工作目录,例如:/opt/redis-cluster/7000/opt/redis-cluster/7005

2、在每个目录中复制一份 redis.conf 配置文件,并按需修改以下关键项:将 port 改为对应端口号(如7000),设置 bind 0.0.0.0,启用 cluster-enabled yes,指定 cluster-config-file nodes-7000.conf,设置 cluster-node-timeout 5000,并关闭 protected-mode nodaemonize yes

3、依次启动全部六个实例,使用命令:/usr/local/bin/redis-server /opt/redis-cluster/7000/redis.conf,依此类推至7005。

二、使用redis-cli创建集群拓扑

通过 redis-cli 的 --cluster 子命令将六个运行中的节点组织成一个具有三主三从结构的集群。该操作会自动分配槽位(16384个)并建立主从关系。

1、确保系统已安装 Redis 5.0 或更高版本客户端,且 redis-cli 可执行。

2、执行集群初始化命令: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

3、当提示 Can I set the above configuration? (type 'yes' to accept) 时,输入 yes 确认。

三、验证集群状态与节点信息

集群创建完成后,需确认各节点是否成功握手、槽位是否均匀分配、主从关系是否建立,以及集群整体是否处于“ok”状态。

1、连接任意一个节点,例如:redis-cli -c -p 7000

PDFlux
PDFlux

PDF内容提取+智能问答神器,结合了科研级精准的非结构化文档解析能力,以及ChatGPT的智能问答能力。

下载

2、执行命令:cluster info,检查 cluster_state:okcluster_known_nodes:6 是否出现。

3、执行命令:cluster nodes,确认输出中包含三行标记为 master 且有对应 slave 行的记录,且每行均显示 connected 状态。

四、配置防火墙与系统服务管理

为保障集群节点间通信稳定,需开放所有Redis实例端口及集群总线端口(即实例端口+10000),同时将实例纳入systemd服务以便统一启停与日志管理。

1、开放端口范围:7000-700517000-17005,使用命令:firewall-cmd --permanent --add-port=7000-7005/tcpfirewall-cmd --permanent --add-port=17000-17005/tcp,随后重载防火墙规则。

2、为每个实例编写 systemd service 文件,例如 /etc/systemd/system/redis_7000.service,内容中指定 ExecStart=/usr/local/bin/redis-server /opt/redis-cluster/7000/redis.conf,并设置 Restart=always

3、执行 systemctl daemon-reload,然后启用并启动服务:systemctl enable redis_7000 && systemctl start redis_7000,依此类推完成全部六个服务。

五、测试数据分片与故障转移能力

通过写入带哈希标签的键值对,验证槽位分配是否生效;通过主动终止主节点进程,观察从节点是否自动升级为主节点并维持集群可用性。

1、使用集群模式客户端连接:redis-cli -c -p 7000

2、写入多个键,例如:set {user1000}.name "Alice"set {user2000}.name "Bob",确认返回 OK 且无MOVED重定向错误。

3、在另一终端中执行:kill -9 $(ps aux | grep 'redis.conf' | grep 7000 | awk '{print $2}'),强制停止7000节点。

4、等待约10秒后,再次执行 cluster nodes,确认原7000节点状态变为 fail,而其从节点(如7003)状态已更新为 master,且槽位已接管。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
python中print函数的用法
python中print函数的用法

python中print函数的语法是“print(value1, value2, ..., sep=' ', end=' ', file=sys.stdout, flush=False)”。本专题为大家提供print相关的文章、下载、课程内容,供大家免费下载体验。

192

2023.09.27

python print用法与作用
python print用法与作用

本专题整合了python print的用法、作用、函数功能相关内容,阅读专题下面的文章了解更多详细教程。

17

2026.02.03

常用的数据库软件
常用的数据库软件

常用的数据库软件有MySQL、Oracle、SQL Server、PostgreSQL、MongoDB、Redis、Cassandra、Hadoop、Spark和Amazon DynamoDB。更多关于数据库软件的内容详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1002

2023.11.02

内存数据库有哪些
内存数据库有哪些

内存数据库有Redis、Memcached、Apache Ignite、VoltDB、TimesTen、H2 Database、Aerospike、Oracle TimesTen In-Memory Database、SAP HANA和ache Cassandra。更多关于内存数据库相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

666

2023.11.14

mongodb和redis哪个读取速度快
mongodb和redis哪个读取速度快

redis 的读取速度比 mongodb 更快。原因包括:1. redis 使用简单的键值存储,而 mongodb 存储 json 格式的数据,需要解析和反序列化。2. redis 使用哈希表快速查找数据,而 mongodb 使用 b-tree 索引。因此,redis 在需要高性能读取操作的应用程序中是一个更好的选择。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

500

2024.04.02

redis怎么做缓存服务器
redis怎么做缓存服务器

redis 作为缓存服务器的答案:redis 是一款开源、高性能、分布式的键值存储,可作为缓存服务器使用。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

411

2024.04.07

redis怎么解决数据一致性
redis怎么解决数据一致性

redis 提供了两种一致性模型,以维护副本数据一致性:强一致性 (sync) 确保写操作仅在复制到所有从节点后才完成;最终一致性 (async) 则在主节点上写操作后认为已完成,牺牲一致性换取性能。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

407

2024.04.07

mysql和redis怎么保证双写一致性
mysql和redis怎么保证双写一致性

确保 mysql 和 redis 双写一致性的技术包括:1、事务性更新:同时更新 mysql 和 redis,保证一致性;2、主从复制:mysql 主服务器更改同步到 redis 从服务器;3、基于事件的更新:mysql 记录更改并发送到 redis等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

475

2024.04.07

Swift iOS架构设计与MVVM模式实战
Swift iOS架构设计与MVVM模式实战

本专题聚焦 Swift 在 iOS 应用架构设计中的实践,系统讲解 MVVM 模式的核心思想、数据绑定机制、模块拆分策略以及组件化开发方法。内容涵盖网络层封装、状态管理、依赖注入与性能优化技巧。通过完整项目案例,帮助开发者构建结构清晰、可维护性强的 iOS 应用架构体系。

3

2026.03.03

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 10.1万人学习

Git 教程
Git 教程

共21课时 | 4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号