redis集群搭建

准备环境

这里准备好了三台虚拟机(裸机)刚刚联网,准备从头搭建
在这里插入图片描述
我们从redis官网可以看到redis的安装命令,这里就不在讲述redis的安装了,网上很多

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

使用xshell连接虚拟机,三台同时操作,下面只截一台的图,其实是三台同时操作,可以看到redis已经安装成功
在这里插入图片描述

redis集群搭建

我们都知道,redis是靠配置文件启动的,我们只需要将配置文件备份,以多个配置文件启动,就相当于启动了多台redis,当然每台的端口号不能相同。

redis配置

port 6001 端口
daemonize yes 以后台方式运行
#bind 127.0.0.1 将这行注释掉,这个表示只允许本机连接redis
protected-mode yes redis默认是开启保护模式的,当保护模式开启时连接redis,要么指定bind ip,要么设置密码,这里我们设置密码,保护模式一般不要关闭
requirepass 123456 设置redis密码
cluster-enabled yes 开启集群模式
masterauth 123456 集群通讯密码
cluster-node-timeout 15000 集群超时时间
appendonly yes 使用aof持久化(可以不改,不改就是使用rdb)
dir /usr/local/redis-cluster/redis-6001/ redis工作目录
cluster-config-file nodes-6001.conf redis集群信息文件位置

第一台redis的配置文件配好之后,我们只需要将这个配置文件拷贝一份改变端口号即可,在redis的配置文件中执行下面的语句
:$s/6001/6004/g 将6001全部替换为6004,成功之后会显示替换了三行
在这里插入图片描述
这样我们分别替换其他的五台配置文件,替换完成之后分别启动
我的redis目录是这样的,其中redis-6001,redis-6002文件夹内部只有一个redis.conf的配置文件,每个配置文件的端口分别和文件夹名对应,这样方便管理
在这里插入图片描述
这里可以看到6台redis启动完成
在这里插入图片描述
最后进入redis src目录下执行 redis-cli -a 123456 --cluster create --cluster-replicas 1 192.168.17.128:6001 192.168.17.100:6002 192.168.17.110:6003 192.168.17.128:6004 192.168.17.100:6005 192.168.17.110:6006,创建集群(这里不要忘了防火墙开放端口,或者关闭防火墙)
-a后面表示密码, --cluster create表示创建集群 --cluster-replicas 1表示每个主节点有一台从节点
在这里插入图片描述
我们可以看到集群搭建成功,每台机器上分配有不同的hash槽,但是我们发现6001的从节点确实6005端口,而不是它本机的6004端口,这是为什么呢?
如果主从节点都在一台机器上,那么这台机器宕机之后,主从节点一起挂,那还要主从有什么用?而redis会将主从节点分别部署到不同的机器,这样就保证了一但一台机器宕掉之后(这台机器的主节点宕了)但是从节点还在,保证了这台机器上的数据不会丢失。

测试

redis-cli -a 123456 -c -h 192.168.17.100 -p 6002 连接集群的命令 -a 表示密码 -c 表示集群方式
在这里插入图片描述
这里我们可以看到当前在6002节点上,当set sex male时,redis经过一些运算,计算出这个sex应当存放在槽2584上,这个槽在6001节点上,就切换到6001节点存储。
当get name时,当前在6001节点,redis集群通过通讯发现name的值存储在6002节点,所以切换到6002节点拿到name的值
通过上面的例子发现redis集群搭建成功

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值