Linux(CentOS 7) 部署 redis 集群

下载redis

Downloads - Redis (官网页都是介绍的最新版,我观察目前出现了redis 和 redis Stack)

因我的旧环境是 CentOS 7,redis最新版已经不在支持,所以示例安装最常用的7.0.x

这里直接附上各个版本下载连接 小伙伴们就不需要在自己寻找下载地址了,任君挑选。地址如下 Index of /releases/

基本前提

1、系统(CentOS 7)

bash 复制代码
cat /etc/os-release

gcc版本

CentOS 7的默认GCC版本为4.8.5版本,而安装Redis7.0.X需要GCC 9.X版本以上,若GCC版本不足,则会造成编译时报错。 可查看我的另一篇文章 进行升级

Centos 7 升级 GCC-CSDN博客

|---------|-------------------------------------------|--------------------|
| GCC 9.3 | sudo yum install devtoolset-9(无视根本不好使) | Redis 7.0+、通用开发需求 |
| GCC 11 | sudo yum install devtoolset-11(无视根本不好使) | 需要最新特性的项目(如 C++20) |

bash 复制代码
gcc --version

解压

一般都会将redis目录放置到 /usr/local/redis目录,所以这里解压直接就解压到目标目录去

bash 复制代码
# 创建目标目录
sudo mkdir -p /usr/local/redis

# 解压到指定目录 --strip-components=1 会去掉压缩包内的第一层目录结构
sudo tar -zxvf redis-7.0.15.tar.gz -C /usr/local/redis --strip-components=1

安装

进入 解压后的 redis目录 /usr/local/redis

bash 复制代码
# 编译
make

# 安装  PREFIX 将编译后的程序文件存放到指定路径 -后续reids的所有程序文件就都存在在此,后续方便删除
make PREFIX=/usr/local/redis install

验证安装

bash 复制代码
/usr/local/redis/bin/redis-server --version

集群部署

注意这里必须要创建六个节点,因为集群部署redis官方要求必须要其三主三从

注意里面大多数redis命令 我都使用了绝对路径 /usr/local/redis/bin/redis-server,懒得配置环境变量了,因为在服务其上使用redis命令的情况太少了,想配置其实也很简单,大家随便一搞就可以了

创建集群节点目录

bash 复制代码
mkdir -p /opt/redis-cluster/{7001,7002,7003,7004,7005,7006}

生成配置文件模板

bash 复制代码
cat <<EOF > /opt/redis-cluster/redis-cluster-template.conf
port {{PORT}}
cluster-enabled yes
cluster-node-timeout 5000
cluster-config-file nodes-{{PORT}}.conf
dir /opt/redis-cluster/{{PORT}}
#关闭持久化以节省内存
appendonly no
#限制每个节点最大内存为 100MB
maxmemory 100mb
# 内存不足时淘汰策略
maxmemory-policy allkeys-lru
# 允许后台运行
daemonize yes
# 进程ID文件路径
pidfile /opt/redis-cluster/{{PORT}}/redis_{{PORT}}.pid
# 日志文件路径
logfile "/opt/redis-cluster/{{PORT}}/{{PORT}}.log"
EOF
生成各节点配置文件
bash 复制代码
for port in 7001 7002 7003 7004 7005 7006; do
  mkdir -p /opt/redis-cluster/$port
  sed "s/{{PORT}}/$port/g" /opt/redis-cluster/redis-cluster-template.conf > /opt/redis-cluster/$port/redis.conf
done

启动 Redis 节点

bash 复制代码
for port in 7001 7002 7003 7004 7005 7006; do
  /usr/local/redis/bin/redis-server /opt/redis-cluster/$port/redis.conf
done

创建 Redis 集群

bash 复制代码
/usr/local/redis/bin/redis-cli --cluster create \
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 127.0.0.1:7006 \
--cluster-replicas 1

yes 后就会看到如下效果

集群验证

bash 复制代码
/usr/local/redis/bin/redis-cli -p 7001 cluster nodes

正常可以看到 三主三从节点

亲测可用~请诸君共赏

相关推荐
不必介怀1 分钟前
Redis在windos系统下的安装和配置
redis
IAR Systems2 分钟前
在IAR Embedded Workbench for Renesas RH850中实现ROPI
linux·运维·算法
@淡 定6 分钟前
redis存储空间复杂度和时间复杂度的平衡
redis
JAVA坚守者19 分钟前
Linux Crontab定时任务完全指南:配置、用法与实战案例
linux·运维·定时任务·crontab·shell 脚本·实战案例·cron 表达式
赵文宇(温玉)30 分钟前
Docker是时代发展的产物
运维·docker·容器
FIT2CLOUD飞致云38 分钟前
操作教程|JumpServer基于作业中心脚本定时删除Windows Server本地用户
运维·网络安全·开源·堡垒机
奥升新能源平台41 分钟前
奥升充电平台安全稳定体系构建
运维·安全·开源·springcloud
国科安芯1 小时前
商业卫星多轴步进驱动系统的抗辐照MCU集成方案
运维·网络·单片机·嵌入式硬件·安全·安全威胁分析·risc-v
DO_Community1 小时前
Ubuntu服务器快速上手:初始配置与安全设置教程
服务器·安全·ubuntu
夜月yeyue1 小时前
Linux内存映射
linux·单片机·嵌入式硬件·硬件架构