使用VMware搭建Redis集群

本文详细介绍了如何在VMware环境下搭建一个三主三从的Redis集群,包括创建节点、配置集群、动态添加和删除主从节点的步骤。通过ruby环境辅助,逐步指导完成Redis集群的构建和维护。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、搭建三主三从redis集群

① 创建7001~1006一共6个文件夹
② 拷贝一个原生的redis.conf文件到7001文件夹中, 并修改redis.conf

# 使用后台启动
daemonize yes
# 使用AOF持久化存储
appendonly yes
# 绑定ip
bind 192.168.92.130
# 修改端口号
port 7001
# 指定数据存放的目录
dir /home/zhutan/dev/redis/redis_cluster_run/7001/
# 启动集群模式
cluster-enabled yes
# 集群的配置, 该文件列出了其他集群的节点
cluster-config-file nodes7001.conf
# 节点超时时间
cluster-node-timeout 5000
# 修改进程pid文件(redis的进程id会写到这里)
pidfile /var/run/redis_7001.pid

③ 将7001文件夹下修改好的redis.conf拷贝到7002~7006文件夹中, 依次替换7001为对应编号
④ 安装ruby
reids集群依赖ruby环境, 所以要先安装ruby, 过程中遇到提示, yes即可
安装ruby, 由于redis需要ruby版本比较高, 而yum源下载最新的却比较低, 所以以下命令执行会有问题

yum install ruby
yum install rubygems
gem install redis

上面装不成功, 使用这个方式安装redis需要的高版本ruby, 过程中遇到提示, yes即可

# 会在/etc/yum.repos.d/目录下多出一个CentOS-SCLo-scl-rh.repo源
yum install centos-release-scl-rh
# 使用新版本安装ruby
yum install rh-ruby23  -y
# 使用新版本的环境变量
scl  enable  rh-ruby23 bash
# 查看ruby版本
ruby -v
# 安装
gem install redis

⑤ 启动redis服务端

./redis_server ../../redis_cluster_run/7001/redis.conf
./redis_server ../../redis_cluster_run/7002/redis.conf
./redis_server ../../redis_cluster_run/7003/redis.conf
./redis_server ../../redis_cluster_run/7004/redis.conf
./redis_server ../../redis_cluster_run/7005/redis.conf
./redis_server ../../redis_cluster_run/7006/redis.conf

⑥ 把redis服务进行集群

./redis-trib.rb  create --replicas 1 192.168.92.130:7001 192.168.92.130:7002 192.168.92.130:7003 192.168.92.130:7004 192.168.92.130:7005 192.168.92.130:7006

⑦ 启动redis客户端

./redis-cli -c -h 192.168.92.130 -p 7001

二、动态添加master主节点

① 创建文件夹7007, 并拷贝一份7001的redis.conf, 替换7001为7007, 并启动7007的redis服务

./redis_server ../../redis_cluster_run/7007/redis.conf

② 添加节点到已存在的集群中, 第一个节点为要加的节点, 第二个节点为任意已经在集群里的节点

./redis-trib.rb  add-node 192.168.92.130:7007 192.168.92.130:7001

③ 重新分配slot槽, 节点为任意一个主节点

./redis-trib.rb reshard 192.168.92.130:7001

④ 依次按照下图输入操作
填写分配槽的数量: 200
在这里插入图片描述

填写接收槽的主节点id
在这里插入图片描述

填写分配槽者: all
all (表示所有master中抽取)
在这里插入图片描述

是否接收分配方案, 填写yes
在这里插入图片描述

查询节点信息: cluster nodes
在这里插入图片描述

三、动态添加slave从节点

① 创建文件夹7008, 并拷贝一份7001的redis.conf, 替换7001为7008, 并启动7008端口的redis

./redis_server ../../redis_cluster_run/7008/redis.conf

② 添加节点到已存在的集群中

./redis-trib.rb  add-node 192.168.92.130:7008 192.168.92.130:7001

③ 进入7008从节点:

./redis-cli -c -h 192.168.92.130 -p 7008

④ 查询要关联的主节点7007的id

cluster nodes

在这里插入图片描述

⑤ 把新加的从节点关联主节点

cluster replicate 5d2899164325c4ed9c9ed4571ce980105ea902b1

在这里插入图片描述

四、动态删除slave从节点

./redis-trib.rb del-node 192.168.92.130:7008 cecd5bdfbd69d49fdcb51b874a3d103574be2ad9

五、动态删除master主节点

① 移除分配的slot槽

./redis-trib.rb reshard 192.168.92.130:7007

② 指定返回slot槽数量
在这里插入图片描述

③ 指定接收的主节点id
在这里插入图片描述

④ 指定返回的主节点id
在这里插入图片描述

⑤ 填写done
在这里插入图片描述

⑥ 输入yes
在这里插入图片描述

⑦ 删除节点

./redis-trib.rb del-node 192.168.92.130:7007 5d2899164325c4ed9c9ed4571ce980105ea902b1

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值