当前位置:主页 > 查看内容

小白都能看懂的Redis集群部署手册

发布时间:2021-05-21 00:00| 位朋友查看

简介:一、运行环境 环境和软件版本 版本 阿里云Centos 7.5 Redis 5.0.7 二、节点情况 节点端口 角色 0.0.0.0:7001 主节点 0.0.0.0:7002 主节点 0.0.0.0:7003 主节点 0.0.0.0:7004 从节点 0.0.0.0:7005 从节点 0.0.0.0:7006 从节点 三、环境准备 mkdir /home/redis……

一、运行环境

环境和软件版本版本
阿里云Centos7.5
Redis5.0.7

二、节点情况

节点:端口角色
0.0.0.0:7001主节点
0.0.0.0:7002主节点
0.0.0.0:7003主节点
0.0.0.0:7004从节点
0.0.0.0:7005从节点
0.0.0.0:7006从节点

三、环境准备

mkdir /home/redis-cluster/7001
make install PREFIX=/home/redis-cluster/7001
cp /home/redis-cluster/redis-5.0.7/redis.conf /home/redis-cluster/7001/bin/

修改配置文件以下内容:

# 修改端口为7001
port 7001

# 设置后台启动
daemonize yes

# 不限制绑定ip
bind 0.0.0.0

# 打开cluster-enabled
cluster-enabled yes

将节点的内容依次复制到其他节点,主从节点之间的密码要保持一致,注意修改端口。

cp -r /home/redis-cluster/7001/* /home/redis-cluster/7002/

准备一个shell脚本,用来统一启动节点。

cd 7001/bin 
./redis-server redis.conf 
cd ../.. 

cd 7002/bin 
./redis-server redis.conf 
cd ../..

cd 7003/bin 
./redis-server redis.conf 
cd ../..

cd 7004/bin 
./redis-server redis.conf 
cd ../..

cd 7005/bin 
./redis-server redis.conf 
cd ../..

cd 7006/bin 
./redis-server redis.conf 
cd ../..

echo "redis-cluster start success..."

赋予执行脚本写和执行的权限

chmod u+x start.sh

四、安全配置

生产环境下集群不能裸奔,所以要增加安全配置。

# 登录集群
./redis-cli -h 127.0.0.1 -p 7001 -c
# 设置密码
config set requirepass 123456

# 密码登录
auth 123456

# 设置链接密码
config set masterauth 123456

# 将修改重写到配置文件中
config rewrite

回去看配置文件,可以发现是重写了masterauth和requirepass,所以每个节点去修改这两个配置项也是可以的。

在这里插入图片描述

五、集群安装

运行上面创建的脚本,查看进程是否正常启动

在这里插入图片描述
集群创建,-a后面携带的是密码

./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 -a 123456

显示槽的分配和结果情况则表示集群搭建成功

在这里插入图片描述
以集群形式访问

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

# 查看集群状态
cluster info

# 查看集群节点
cluster nodes

登录的是7001,添加一个测试数据set name helloworld,可以看到此时通过计算得到的槽式5789,将数据分配给7002这个节点。

在这里插入图片描述
到这基本上就完成了整个Redis-Cluster的搭建部署流程。

六、踩到的坑

1、如果是云服务或者是远程服务器,redis记得要取消ip的绑定,不然后面创建集群的时候会连不上

# 不限制绑定ip
bind 0.0.0.0

2、./redis-cli --cluster create创建集群的时候,如果是云服务要记得用外网地址。

客户端操作数据的时候,会计算槽获取要操作的Redis节点,节点信息保存在node.conf里,这里的信息就是创建集群的时候指定的信息,如果不是外网地址发生重定向,客户端拿到的是错误地址会导致访问不到。

3、如果是在同个机器下部署伪集群,可能会出现一直卡在等待客户端加入,可以看到所有节点的id是一样的,此时可以修改node.conf的文件名,例如:node.conf -> node_7001.conf

在这里插入图片描述

;原文链接:https://blog.csdn.net/lveex/article/details/115474950
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!

推荐图文


随机推荐