当前位置: 首页 > article >正文

CentOS 7 企业级Redis 7部署指南

CentOS 7 企业级Redis 7部署指南

目录导航

  1. 一、环境准备
    • 1.1 依赖管理
  2. 二、离线安装
    • 2.1 源码编译安装
    • 2.2 目录结构规范
  3. 三、生产配置
    • 3.1 主配置文件
    • 3.2 配置生成脚本
  4. 四、系统集成
    • 4.1 Systemd服务文件
    • 4.2 服务管理命令
  5. 五、安全加固
    • 5.1 网络安全配置
    • 5.2 审计配置
  6. 六、性能调优
    • 6.1 内存优化配置
    • 6.2 基准测试命令
  7. 七、维护指南
    • 7.1 监控命令
    • 7.2 备份策略

## 一、环境准备

###1.1 依赖管理安装

依赖包网盘下载:链接:https://drive.uc.cn/s/9021e2417a1e4

# 安装开发工具链
rpm -ivh *.rpm
rpm -Uvh *.rpm --nodeps --force

# 验证GCC版本(需≥4.9)
gcc --version | head -n1

image.png

##二、离线安装

###2.1 源码编译安装

# 解压源码包
tar -zxvf redis-7.2.3.tar.gz
cd redis-7.2.3

# 多线程编译优化
make -j $(nproc) BUILD_TLS=yes CFLAGS="-O2 -march=native"

# 验证编译结果(约需5-10分钟)
make test

# 企业级路径安装
sudo make install \
    PREFIX=/opt/redis \
    SYSTEMD_DIR=/usr/lib/systemd/system \
    LOG_DIR=/var/log/redis \
    DATA_DIR=/data/redis

###2.2 目录结构规范

/opt/redis/
├── bin/          # 可执行文件(redis-server、redis-cli等)
├── etc/          # 配置文件(redis.conf)
├── var/          # 运行时文件(pidfile等)
└── logs -> /var/log/redis  # 日志软链接

/data/redis/      # 持久化数据存储(AOF/RDB文件)

##三、生产配置

###3.1 主配置文件 (redis.conf)

# 网络配置
bind 0.0.0.0
protected-mode yes
port 6379
tcp-backlog 511

# 安全配置
requirepass ${REDIS_PASSWORD}
rename-command FLUSHDB ""
rename-command CONFIG ""

# 资源限制
maxclients 10000
maxmemory 16GB
maxmemory-policy allkeys-lru

# 持久化策略
appendonly yes
appendfsync everysec
aof-rewrite-incremental-fsync yes

# 性能优化
io-threads 4
activerehashing yes

###3.2 配置生成脚本

#!/bin/bash
# generate_redis_conf.sh

read -s -p "Enter Redis password: " REDIS_PASSWORD
echo

sed -e "s/\${REDIS_PASSWORD}/$REDIS_PASSWORD/" \
    -e "s/^maxmemory .*/maxmemory 16GB/" \
    < redis.conf.template > redis.conf

##四、系统集成

###4.1 Systemd服务文件

# /usr/lib/systemd/system/redis.service
[Unit]
Description=Redis In-Memory Data Store
Documentation=https://redis.io/documentation
After=network.target
Conflicts=redis-sentinel.service

[Service]
Type=notify
User=redis
Group=redis
ExecStart=/opt/redis/bin/redis-server /opt/redis/etc/redis.conf
ExecStop=/opt/redis/bin/redis-cli shutdown
Restart=always
RestartSec=30
LimitNOFILE=65535
OOMScoreAdjust=-100

[Install]
WantedBy=multi-user.target

###4.2 服务管理命令

# 创建专用用户
sudo useradd -r -s /sbin/nologin redis

# 设置目录权限
sudo chown -R redis:redis /opt/redis /data/redis

# 重载服务配置
sudo systemctl daemon-reload
sudo systemctl enable --now redis

# 查看服务状态
systemctl status redis

##五、安全加固

###5.1 网络安全配置

# 防火墙设置
sudo firewall-cmd --permanent --add-port=6379/tcp
sudo firewall-cmd --reload

# SELinux策略
sudo semanage port -a -t redis_port_t -p tcp 6379

###5.2 审计配置

# 审计日志配置
audit-log-file /var/log/redis/audit.log
audit-log-syslog-enabled yes

##六、性能调优

###6.1 内存优化配置

# 内存分配策略
jemalloc-bg-thread yes
maxmemory-samples 5

# 连接池优化
timeout 300
tcp-keepalive 60

###6.2 基准测试命令

redis-benchmark \
  -h 127.0.0.1 \
  -p 6379 \
  -a ${REDIS_PASSWORD} \
  -c 1000 \
  -n 1000000 \
  -d 2048 \
  -t set,get

##七、维护指南

###7.1 监控命令

# 实时监控(每秒刷新)
redis-cli -a ${REDIS_PASSWORD} --stat

# 内存热点分析
redis-cli -a ${REDIS_PASSWORD} --bigkeys

###7.2 备份策略

# 自动备份脚本(每日凌晨2点)
sudo crontab -e
0 2 * * * /opt/redis/bin/redis-cli -a ${REDIS_PASSWORD} BGSAVE


http://www.kler.cn/a/549346.html

相关文章:

  • 【第15章:量子深度学习与未来趋势—15.3 量子深度学习在图像处理、自然语言处理等领域的应用潜力分析】
  • git lfs 安装方法
  • 自学Java-面向对象高级(final、单例类、枚举类、抽象类、接口)
  • 反向代理ml
  • React:初识React
  • 利用MATLAB的linkaxes函数实现子图频率轴同步缩放
  • Hive查询之分组与Join
  • 链表 —— 常用技巧与操作总结详解
  • [思考记录.AI]关于Deepseek-r1的思维链
  • DeepSeek 助力 Vue 开发:打造丝滑的评分组件(Rating)
  • 什么是MVC?什么是SpringMVC?什么是三层架构?
  • Cursor 配置管理器:优化您的编辑器体验
  • Kotlin 2.1.0 入门教程(二十)扩展
  • 青少年编程与数学 02-009 Django 5 Web 编程 17课题、中间件
  • 车载音频架构图详解(精简)
  • 【Scrapy】Scrapy教程2——工作原理
  • 《全球网络安全政策法律发展研究报告 (2024) 》
  • pycharm社区版有个window和arm64版本,到底下载哪一个?还有pycharm官网
  • PHP本地商家卡券管理系统
  • C# 控制台相关 API 与随机数API