Redis3集群搭建(下)- 实操

Redis3集群搭建(下)- 实操

上一篇博客学习了一些Redis集群的基础知识,这篇文章将会开始学习搭建一个3主3从的小型的Redis集群。

准备

  • Redis 3.2.9
  • 一台机器,Linux或者macOS

我本机是macOS,所以这里以macOS为例。

安装

$ wget http://download.redis.io/releases/redis-3.2.9.tar.gz
$ tar xzf
$ cd redis-3.2.9/
$ make

编译完成后,就可以启动Redis了

$ src/redis-server redis.conf

启动完成,说明Redis已经可以使用了。

配置文件

还需要准备一些配置文件供Redis集群使用,Redis集群搭建需要六个运行在Redis集群模式下的Redis实例,而不是普通的Redis实例,所以需要通过修改配置文件来让Redis实例支持集群。

$ mkdir redis-cluster
$ cd redis-cluster
$ mkdir 7000 7001 7002 7003 7004 7005

在7000-7005这几个文件夹中各创建一个redis.conf文件,文件的内容可以使用最开始解压后文件夹中的redis.conf文件,在这个基础上进行修改。需要修改如下几个配置:

port 7000
cluster-enabled yes
cluster-config-file nodes-7000.conf
cluster-node-timeout 15000
appendonly yes
  • cluster-enabled:配置打开集群模式
  • cluster-enabled:配置保存节点配置文件的路径,默认值为nodes.conf,无需人为修改,它由Redis集群启动时创建,并在有需要时自动进行更新
  • appendonly:打开持久化

其他文件夹的配置以此类推,将可执行文件redis-server复制到redis-cluster文件夹下面,然后使用以下命令,一次在每个文件夹下面执行:

$ cd 7000
$ ../redis-server ./redis.config

搭建集群

把所有实例都运行起来之后,就可以使用这些实例开始搭建集群了,同时为每个节点编写配置文件。使用 Redis集群命令行工具redis-trib,编写节点配置文件可以变得非常简单。redis-trib.rb在Redis源码的src目录下,他是用ruby编写的,可以通过它来对Redis集群进行创建、检查、分片等工作。所以本机还需要安装配置ruby环境(ps:ruby环境配置后,需要安装Ruby的Redis接口,使用命令gem install redis)。

Ruby方式

创建集群:

./redis-trib.rb create --replicas 1 127.0.0.1:7000 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

这个命令在这里用于创建一个新的集群,–replicas 1表示为集群中的每个主节点创建一个从节点。redis-trib这时候会打印出一份预想中的配置给你看,如果觉得没有问题,输入yes,集群就开始创建了。
如下图所示,表示集群创建成功:

create-cluster脚本

如果觉得这种方式太麻烦,也可以通过Redis源码目录下的utils/create-cluster文件夹中的create-cluster脚本创建集群。通过这个脚本可以创建一个3主3从的集群,并且端口默认从30001开始。但是通过这种方式就不能学习到那么多Redis集群的细节。
这个脚本主要有以下命令:
* create-cluster start
* create-cluster create
* create-cluster stop

测试集群

这里用redis-cli脚本进行测试,看集群是否可用。

$ ./redis-cli -c -p 7000
127.0.0.1:7000> set mykey redis
-> Redirected to slot [14687] located at 127.0.0.1:7002
OK
127.0.0.1:7002> set hello world
-> Redirected to slot [866] located at 127.0.0.1:7000
OK
127.0.0.1:7000> get mykey
-> Redirected to slot [14687] located at 127.0.0.1:7002
"redis"
127.0.0.1:7002> get hello
-> Redirected to slot [866] located at 127.0.0.1:7000
"world"
127.0.0.1:7000>

可以看出Redis会根据key计算对应的slot,然后跳转到对应的node上去,和我们之前介绍的内容一致。

至此,一个3主3从的Redis集群就搭建完成了,接下来可能会写一篇使用Docker搭建Redis集群的文章。

参考

基于bert实现关系三元组抽取python源码+数据集+项目说明.zip基于bert实现关系三元组抽取python源码+数据集+项目说明.zip基于bert实现关系三元组抽取python源码+数据集+项目说明.zip基于bert实现关系三元组抽取python源码+数据集+项目说明.zip基于bert实现关系三元组抽取python源码+数据集+项目说明.zip 个人大四的毕业设计、课程设计、作业、经导师指导并认可通过的高分设计项目,评审平均分达96.5分。主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的学习者,也可作为课程设计、期末大作业。 [资源说明] 不懂运行,下载完可以私聊问,可远程教学 该资源内项目源码是个人的毕设或者课设、作业,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96.5分,放心下载使用! 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),供学习参考。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值