redis-cluster

环境准备

服务器系统Centos6.8
内存1G
CPU2核
IP地址10.0.0.20

首先获取redis源码包,我这里有,如果没有可以去redis官网获取

https://redis.io/download

# 或者使用wget命令直接获取到redis源码包
wget http://download.redis.io/releases/redis-5.0.5.tar.gz

在这里插入图片描述

# # 安装依赖,否则会报错
yum -y install gcc gcc-c++
# 解压redis源码包
tar zxf redis-5.0.5.tar.gz 
# 进入解压后的包
cd redis-5.0.5
# 安装在指定路径
make PREFIX=/usr/local/redis-cluster

在这里插入图片描述

# 执行这条命令
make PREFIX=/usr/local/redis-cluster MALLOC=libc

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

make install

在这里插入图片描述

cd 
cd redis-5.0.5
mkdir /usr/local/redis
mkdir /usr/local/redis/{7001..7006}
cp redis.conf /usr/local/redis/7001/
cp redis.conf /usr/local/redis/7002/
cp redis.conf /usr/local/redis/7003/
cp redis.conf /usr/local/redis/7004/
cp redis.conf /usr/local/redis/7005/
cp redis.conf /usr/local/redis/7006/
# 编辑redis配置文件,修改完后保存退出
vim /usr/local/redis/7001/redis.conf 

在这里插入图片描述
在这里插入图片描述

vim /usr/local/redis/7002/redis.conf 

在这里插入图片描述
在这里插入图片描述

vim /usr/local/redis/7003/redis.conf

在这里插入图片描述
在这里插入图片描述

vim /usr/local/redis/7004/redis.conf 

在这里插入图片描述

在这里插入图片描述

vim /usr/local/redis/7005/redis.conf 

在这里插入图片描述

在这里插入图片描述

vim /usr/local/redis/7006/redis.conf 

在这里插入图片描述

在这里插入图片描述

cd /usr/local/redis/
# 编写脚本
vim redis.sh
#!/bin/bash
for i in $(seq 7001 7006)
do
cd $i && redis-server redis.conf && cd ..
done
vim 7001/redis.conf 

在这里插入图片描述

vim 7002/redis.conf 

在这里插入图片描述

vim 7003/redis.conf 

在这里插入图片描述

vim 7004/redis.conf 

在这里插入图片描述

vim 7005/redis.conf 

在这里插入图片描述

vim 7006/redis.conf 

在这里插入图片描述

# 执行脚本
sh redis.sh 
ss -ntl

在这里插入图片描述

安装redis-trib所需的 ruby脚本
yum -y install ruby
yum -y install rubygems
复制redis解压文件src下的redis-trib.rb文件到redis-cluster目录并安装gem
gem install redis -v 3.2.1

这是下载链接
https://rubygems.org/gems/redis/versions/3.2.2

在这里插入图片描述

cd /root/redis-5.0.5/src/

注意:redis-trib.rb在redis/src目录下。

# 使用redis-trib.rb创建集群
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

在这里插入图片描述

在这里插入图片描述

上面显示创建成功有3个主节点3个从节点,每个节点都是成功连接状态。

redis-cli -c -h 127.0.0.1 -p 7001
CLUSTER INFO
CLUSTER NODES

在这里插入图片描述

set name szm
exit
redis-cli -c -h 127.0.0.1 -p 7006
get name
set sex girl
exit
redis-cli -c -h 127.0.0.1 -p 7004
get name
get sex

在这里插入图片描述

根据redis-cluster的key值分配,name应该分配到节点7002[5461-10922]上,上面显示redis-cluster自动从7001跳转到了7002节点。

netstat -ntlp | grep 7003
kill -15 13744
netstat -ntlp | grep 7001
kill -15 13734

集群节点选举
现在模拟将7003节点挂掉,按照redis-cluster原理会选举会将 7003的从节点7005选举为主节点

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值