当前位置: 代码网 > it编程>数据库>Redis > Redis 7.X 部署指南之单机、主从、哨兵和集群部署

Redis 7.X 部署指南之单机、主从、哨兵和集群部署

2026年01月20日 Redis 我要评论
一、redis简介与部署方式概览redis是一款高性能的键值存储系统,支持多种数据结构,常用于缓存、消息队列、分布式锁等场景。根据不同的可用性、扩展性与性能需求,redis提供了四种常见部署模式:单机

一、redis简介与部署方式概览

redis是一款高性能的键值存储系统,支持多种数据结构,常用于缓存、消息队列、分布式锁等场景。根据不同的可用性、扩展性与性能需求,redis提供了四种常见部署模式:

  • 单机部署:适合开发、测试环境,简单快捷。
  • 主从部署:实现数据冗余与读写分离,提升读取性能。
  • 哨兵部署:在主从基础上实现自动故障转移,提高可用性。
  • 集群部署:支持数据分片与高可用,适合大规模、高并发场景。

下面将逐步讲解每种部署方式的安装、配置与操作。

二、环境准备(通用步骤)

2.1 系统要求

  • linux系统(centos 7+ / ubuntu 18.04+)
  • gcc环境(redis由c编写)
  • 网络互通(集群、主从需互通)

2.2 安装gcc

# 检查gcc是否安装
gcc --version
# 安装gcc
yum install gcc -y        # centos
apt install gcc -y        # ubuntu

2.3 关闭防火墙(测试环境建议)

systemctl stop firewalld.service
systemctl disable firewalld
# 或使用firewall-cmd放行相应端口

三、单机部署

3.1 下载与编译

mkdir -p /opt/software/redis
cd /opt/software/redis
wget https://download.redis.io/redis-stable.tar.gz
tar -xzf redis-stable.tar.gz
cd redis-stable
make install

3.2 检查安装

ll /usr/local/bin/redis-*

应看到以下关键文件:

  • redis-server:服务端
  • redis-cli:客户端
  • redis-sentinel:哨兵
  • redis-benchmark:性能测试工具

3.3 配置与启动

编辑 redis.conf

vim redis.conf

关键修改:

bind * -::*                     # 允许所有ip连接
protected-mode no               # 关闭保护模式
daemonize yes                   # 后台运行
logfile /opt/software/redis/redis-stable/redis.log
dir /opt/software/redis
requirepass 1qaz@wsx            # 设置密码(可选)

启动服务:

redis-server redis.conf
redis-cli -a 1qaz@wsx           # 带密码连接

3.4 常用命令

keys *                          # 查看所有键
auth 密码                        # 认证
quit                            # 退出
redis-cli shutdown             # 关闭服务

四、主从部署(master-slave)

4.1 架构说明

  • 一主多从,数据单向同步
  • 主节点可写,从节点只读
  • 故障时需人工切换主节点

4.2 配置从节点

在从节点的 redis.conf 中添加:

replicaof 192.168.75.129 6379   # 主节点ip与端口
masterauth 1qaz@wsx             # 如果主节点有密码

4.3 查看主从信息

在主节点执行:

redis-cli -a 1qaz@wsx info replication

输出中应看到 connected_slaves 数量及从节点信息。

五、哨兵部署(sentinel)

5.1 哨兵作用

  • 监控主从节点状态
  • 自动故障转移
  • 通知客户端新主节点地址

5.2 哨兵配置

编辑 sentinel.conf

protected-mode no
port 26379
daemonize yes
logfile /opt/software/redis/redis-stable/sentinel.log
dir /opt/software/redis
sentinel monitor mymaster 192.168.75.129 6379 2
sentinel down-after-milliseconds mymaster 30000
sentinel failover-timeout mymaster 180000

5.3 启动哨兵

redis-sentinel sentinel.conf

5.4 查看哨兵状态

redis-cli -p 26379 info sentinel

5.5 故障模拟与恢复

  • 停止主节点
  • 观察哨兵日志,查看新主节点选举
  • 重启原主节点,观察是否变为从节点

六、集群部署(cluster)

6.1 集群特点

  • 数据分片(16384个哈希槽)
  • 自动故障转移
  • 支持水平扩展

6.2 集群配置(三主三从示例)

每台机器配置两个节点(6379主,6380从)。

配置文件示例 redis_6379.conf

bind * -::*
protected-mode no
port 6379
daemonize yes
cluster-enabled yes
cluster-node-timeout 5000
dir /opt/software/redis/cluster
appendonly yes
logfile "/opt/software/redis/redis-stable/cluster/redis6379.log"
cluster-config-file nodes-6379.conf

6.3 启动所有节点并创建集群

# 启动节点
redis-server ./cluster/redis_6379.conf
redis-server ./cluster/redis_6380.conf
# 创建集群
redis-cli --cluster create \
  --cluster-replicas 1 \
  192.168.75.129:6379 192.168.75.129:6380 \
  192.168.75.131:6379 192.168.75.131:6380 \
  192.168.75.132:6379 192.168.75.132:6380

6.4 集群常用命令

redis-cli cluster info           # 集群信息
redis-cli cluster nodes         # 节点列表
redis-cli -c                    # 开启集群模式连接

6.5 故障转移测试

停止某一主节点,观察其从节点是否自动提升为主节点,并重新加入集群。

七、配置文件与命令汇总

7.1 核心配置文件路径

  • 单机/主从:/opt/software/redis/redis-stable/redis.conf
  • 哨兵:/opt/software/redis/redis-stable/sentinel.conf
  • 集群:/opt/software/redis/redis-stable/cluster/redis_{port}.conf

7.2 常用命令速查

# 服务管理
redis-server xxx.conf
redis-cli shutdown
ps aux | grep redis
# 集群操作
redis-cli --cluster create ...
redis-cli cluster nodes
redis-cli -c
# 数据操作
keys *
set/get/del
auth 密码
info replication

八、部署建议与注意事项

部署方式适用场景优点缺点
单机开发、测试简单快捷无高可用,性能受限
主从读多写少,数据备份读写分离,数据冗余故障需人工干预
哨兵高可用,自动故障转移自动切换,客户端透明配置复杂,数据可能丢失
集群大数据量,高并发,高可用数据分片,水平扩展部署复杂,运维成本高

8.1 安全建议

  • 生产环境务必设置密码
  • 使用防火墙限制访问ip
  • 定期备份rdb/aof文件

8.2 性能调优建议

  • 根据内存使用情况选择合适的持久化方式
  • 合理设置 maxmemory 和淘汰策略
  • 监控慢查询与内存碎片

九、总结

redis的部署方式多样,选择适合业务场景的方案至关重要:

  • 学习和开发可用单机
  • 小型项目可用主从+哨兵
  • 中大型高并发系统推荐集群

到此这篇关于redis 7.x 部署指南:单机、主从、哨兵、集群的文章就介绍到这了,更多相关redis单机、主从、哨兵、集群内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com