首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
SAAS
ToB门户
了解全球最新的ToB事件
论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
微博
Follow
记录
Doing
博客
Blog
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
排行榜
Ranklist
相册
Album
应用中心
qidao123.com ToB IT社区-企服评测·应用市场
»
论坛
›
软件与程序人生
›
DevOps与敏捷开发
›
【Redis】第1节|Redis服务搭建
返回列表
发新帖
【Redis】第1节|Redis服务搭建
[复制链接]
发表于 2025-7-27 05:38:34
|
显示全部楼层
|
阅读模式
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
×
一、Redis 底子概念
核心
功能
内存
数据库
,支持持久化(RDB/AOF)、主从复制、哨兵高可用、集群分片。
常用场景:缓存、分布式锁、消息队列、计数器、排行榜等。
安装环境
依赖 GCC 环境(C语言编译),需先安装 gcc。
关闭
防火墙
或
配置
端口放行(默认端口 6379)。
二、单机部署
1. 安装步调
# 1. 创建目录并下载
mkdir -p /opt/software/redis
cd /opt/software/redis
wget https://download.redis.io/redis-stable.tar.gz
# 2. 解压并编译安装
tar -xzf redis-stable.tar.gz
cd redis-stable
make install # 生成可执行文件到 /usr/local/bin
# 3. 验证安装
ll /usr/local/bin | grep redis # 检查是否生成 redis-server、redis-cli 等工具
复制
代码
2.
配置
与启动
配置
文件
:修改 redis.conf (路径:/opt/software/redis/redis-stable)
bind * -::* # 允许所有IP连接
daemonize yes # 后台运行
logfile "redis.log" #
日志
路径
dir "/opt/software/redis" # 工作目录
requirepass "1qaz@WSX" # 设置密码(可选)
protected-mode no # 关闭保护模式(允许远程连接)
复制
代码
启动与连接
redis-server redis.conf # 启动服务
redis-cli -a 1qaz@WSX # 带密码连接客户端
复制
代码
三、主从部署(Master-Slave)
1. 核心概念
单向复制
:主节点(Master)写入,从节点(Slave)只读,数据自动同步。
作用
:数据冗余、读写分离、故障恢复底子。
2. 配置步调(从节点)
# 修改从节点 redis.conf
replicaof <master_ip> <master_port> # 示例:replicaof 192.168.75.129 6379
requirepass "1qaz@WSX" # 主节点密码(若有)
replica-read-only yes # 从节点只读
复制代码
3. 验证
# 主节点查看从节点信息
redis-cli info replication # 输出中包含 slave0 信息(ip、端口、状态)
# 从节点查看角色
redis-cli info replication | grep role:slave
复制代码
四、哨兵部署(Sentinel)
1. 核心
功能
自动故障转移
:
监控
主从节点,主节点故障时自动选举新主节点。
集群模式
:多个哨兵节点协同工作,避免单点故障。
2. 配置步调
创建哨兵配置文件
(sentinel.conf)
protected-mode no # 关闭保护模式
daemonize yes # 后台运行
port 26379 # 哨兵端口
logfile "sentinel.log" #
日志
路径
dir "/opt/software/redis"
#
监控
主节点(mymaster 为主节点名称,2 为法定人数)
sentinel monitor mymaster 192.168.75.129 6379 2
sentinel down-after-milliseconds mymaster 30000 # 主节点超时时间(30秒)
sentinel failover-timeout mymaster 180000 # 故障转移超时时间(180秒)
复制代码
启动哨兵
redis-sentinel sentinel.conf # 或 redis-server sentinel.conf --sentinel
复制代码
3. 故障模拟
# 停止主节点服务
redis-cli shutdown -p 6379
# 查看哨兵
日志
,确认新主节点选举
tail -f sentinel.log
# 验证新主节点
redis-cli -p 6379 info replication | grep role:master
复制代码
五、集群部署(Cluster)
1. 核心概念
分片
存储
:数据通过哈希槽(16384个)分布在多个主节点,突破单机内存限制。
高可用性
:每个主节点配备从节点,支持自动故障转移。
2. 配置准备(三主三从)
节点规划
节点角色
IP
端口
主节点
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
配置文件
(以 6379 主节点为例)
cluster-enabled yes # 开启集群模式
cluster-node-timeout 5000 # 节点超时时间(5秒)
cluster-config-file nodes-6379.conf # 集群配置文件(自动生成)
port 6379
appendonly yes # 开启AOF持久化
复制代码
3. 启动与初始化集群
# 启动所有节点
for port in 6379 6380; do
redis-server ./cluster/redis_${port}.conf
done
# 创建集群(--cluster-replicas 1 表示每个主节点配1个从节点)
redis-cli --cluster create \
192.168.75.129:6379 192.168.75.131:6379 192.168.75.132:6379 \
192.168.75.129:6380 192.168.75.131:6380 192.168.75.132:6380 \
--cluster-replicas 1
复制代码
4. 数据读写
# 连接集群(-c 开启自动路由)
redis-cli -c -p 6379
# 写入数据(自动路由到目标节点)
set key1 value1 # 若键属于其他节点,返回 MOVED 错误并提示目标节点
复制代码
六、关键配置文件路径
部署模式
配置文件路径
阐明
单机
/opt/software/redis/redis-stable/redis.conf
单机配置
主从
从节点 redis.conf 增长 replicaof
主节点无需修改
哨兵
/opt/software/redis/redis-stable/sentinel.conf
哨兵集群配置
集群
/opt/software/redis/cluster/redis_*.conf
每个节点独立配置文件
七、常用下令汇总
操作类型
下令示例
阐明
启动服务
redis-server [config-file]
带配置文件启动
连接客户端
redis-cli -h IP -p PORT -a PASSWORD
连接 Redis 实例
查看状态
redis-cli info [section]
查看
服务器
状态(如 replication)
关闭服务
redis-cli shutdown [-p PORT]
安全
关闭 Redis 实例
集群管理
redis-cli --cluster create/info/nodes
集群创建、信息查询、节点列表
八、留意事项
端口冲突
:确保各节点端口未被占用(主节点默认 6379,哨兵默认 26379)。
防火墙
设置
:开放所有节点端口(6379、6380、26379 等)。
配置持久化
:生产环境发起同时开启 RDB 和 AOF,避免数据丢失。
监控
工具
:利用 redis-cli monitor、info 下令或第三方工具(如 Prometheus)监控集群状态。
回复
使用道具
举报
返回列表
浏览过的版块
分布式数据库
运维.售后
云原生
SAAS
Java
虚拟化与私有云
主机安全
.Net
前端开发
东湖之滨
+ 我要发帖
登录后关闭弹窗
登录参与点评抽奖 加入IT实名职场社区
去登录
微信订阅号
微信服务号
微信客服(加群)
H5
小程序
快速回复
返回顶部
返回列表