redis集群搭建与卸载

由于机器数量有限,以单机多实例方式模拟redis集群
8实例,4主4从集群模式

1、src目录下编译

make MALLOC=libc

2、 创建目录

cd redis-5.0.0/
mkdir redis-cluster
确认端口没被占用
netstat -anp |grep “7001|7002|7003|7004|7005|7006”
cd redis-cluster/
mkdir 7001
mkdir 7002
mkdir 7003
mkdir 7004
mkdir 7005
mkdir 7006
mkdir 7007
mkdir 7008

3、移动配置文件并修改

cd redis-5.0.0/
cp redis.conf redis-cluster/7001
修改配置文件:
vim redis.conf
daemonize yes #后台启动
port 7001 #修改对应端口
bind 127.0.0.1 #必须要绑定当前机器的IP
dir /redis-5.0.0/redis-cluster/7001/ #指定持久化数据文件存放位置,不同实例必须要配置不同目录,不然会造成数据丢失,因为一个master存放一部分数据
cluster-enabled yes #启动集群模式
cluster-config-file nodes-7001.conf #每个节点对应一个文件,让集群中其他节点知道,文件最好与端口对应
cluster-node-timeout 5000 #集群失效时间,单位ms
appendonly yes #开启AOF持久化模式

7002~7008的对应修改

4、分别启动8个redis实例,检查是否启动成功

/redis-5.0.0/src/redis-server …/redis-cluster/700*/redis.conf
检查是否成功:
ps -ef|grep redis
netstat -anp |grep 700*
netstat -tunpl |grep redis

集群模式搭建,5.0之后redis抛弃了ruby,将命令集成到redis-cli中,所以后面分两部分讲解搭建步骤!

5、创建集群

5.0之前的版本

(1) 安装ruby
redis集群脚本使用ruby开发,所以需要安装ruby
下载最新版的 Ruby 压缩文件。请点击这里下载
下载 Ruby 之后,解压到新创建的目录下:
tar -zxvf ruby-2.5.3.tar.gz
cd ruby-2.5.3/
现在,配置并编译源代码,如下所示:
./configure
make
sudo make install
安装后,通过在命令行中输入以下命令来确保一切工作正常:
ruby -v
gem install redis #安装ruby和redis的接口

报错1:

[root@test /]# gem install redis
ERROR: Loading command: install (LoadError)
cannot load such file – zlib
ERROR: While executing gem … (NoMethodError)
undefined method `invoke_with_build_args’ for nil:NilClass

解决1:

安装zlib开发库
yum install zlib-devel
cd /ruby-2.5.3/ext/zlib/
将zlib集成到ruby
ruby extconf.rb
vim /ruby-2.5.3/ext/zlib/Makefile
将:zlib.o: $(top_srcdir)/include/ruby.h
改为:zlib.o: …/…/include/ruby.h
继续
make
make install

再次
gem install redis

报错2:

[root@test1 zlib]# gem install redis
ERROR: While executing gem … (Gem::Exception)
Unable to require openssl, install OpenSSL and rebuild Ruby (preferred) or use non-HTTPS sources

解决2:

安装openssl库
yum install openssl-devel
将openssl集成到ruby
cd /ruby-2.5.3/ext/openssl/
ruby extconf.rb --with-openssl-include=/usr/include/openssl --with-openssl-lib=/usr/lib64/openssl/engines
同样修改Makefile中所有的$(top_srcdir)为…/…
make
sudo make install

再次gem install redis成功!
(2)使用redis-trib.rb创建集群
cd /redis-5.0.0/src/
./redis-trib.rb create --replicas 1 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 127.0.0.1:7007127.0.0.1:7008
#–replicas 1表示master与slave的比值,并且以命令行中ip的顺序为主,分配时前面的为master,后面的为slave。
自动出配置方案,接受yes,集群创建完毕。

5.0之后(包含5.0)的版本

(1)使用redis-cli命令创建集群
cd /redis-5.0.0/src/
./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 127.0.0.1:7007 127.0.0.1:7008 --cluster-replicas 1
#–cluster-replicas 1表示master与slave的比值,并且以命令行中ip的顺序为主,分配时前面的为master,后面的为slave
显示如下,系统自动分配master和slave
确定分配输入yes
在这里插入图片描述
创建成功:
在这里插入图片描述
注:上面主节点有slots,从节点没有slots,因为从节点不支持写操作。<\font>

6、启动集群

/redis-5.0.0/src/redis-server …/redis-cluster/700*/redis.conf

7、删除集群

卸载或重新安装Redis集群
停止当前Redis集群各节点的服务,然后删除对应的数据文件 .aof 和配置文件 .conf
删除存放集群信息的nodes
.conf
在这里插入图片描述
删除存放aof持久化日志的
.aof文件
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值