Redis Cluster集群的配置

Redis Cluster集群的配置与伸缩

1、集群的快速配置(推荐)

1.1 首先在找合适的路径

我这里把路径写到了usr/local/redis/bin/的文件起名为redis-8000.conf

1.2 将配置文件简单的写入以下配置

# 关闭保护模式
protected-mode no
# 端口号
port 8000
# 是否后台运行
daemonize yes
# redis运行时产生的日志的名字
logfile "8000.log"
# 文件存储路径
dir "/var/redis-5.0.5/data/"
dbfilename dump-8000.rdb
protected-mode no
# 开启集群
cluster-enabled yes
# 集群运行时文件
cluster-config-file nodes-8000.conf
# 是否集群所有的节点都正常集群才可使用,改为no
cluster-require-full-coverage no
# 节点请求超时时间 
cluster-node-timeout 10000

创建好文件后是这个样子
在这里插入图片描述

1.3 将文件复制里面的端口号都改了

我们这里有个改端口号还有其他配置文件的指令

sed 's/原先的数值/要修改后的数值' +原文件名 >> 修改后生成的文件名

这里我们要生成很多个文件所以要打以下命令

sed 's/8000/8001/g' redis-8000.conf >> redis-8001.conf
sed 's/8000/8002/g' redis-8000.conf >> redis-8002.conf
sed 's/8000/8003/g' redis-8000.conf >> redis-8003.conf
sed 's/8000/8004/g' redis-8000.conf >> redis-8004.conf
sed 's/8000/8005/g' redis-8000.conf >> redis-8005.conf

建成后
在这里插入图片描述

1.4 启动多个redis

./redis-server ./redis-8000.conf
./redis-server ./redis-8001.conf
./redis-server ./redis-8002.conf
./redis-server ./redis-8003.conf
./redis-server ./redis-8004.conf
./redis-server ./redis-8005.conf

在这里插入图片描述
我们在启动看一下启动的状态

ps -ef | grep redis

在这里插入图片描述

1.5 配置集群

前边三个是主节点,后边三个是从节点

./redis-cli --cluster create 192.168.2.144:8000 192.168.2.144:8001 192.168.2.144:8002 192.168.2.144:8003 192.168.2.144:8004 192.168.2.144:8005 --cluster-replicas 1

输入yes
就已经配置完毕

2、添加节点

2.1 首先创建两台节点为8006 和 8007 节点

sed 's/8000/8006/g' redis-8000.conf >> redis-8006.conf
sed 's/8000/8007/g' redis-8000.conf >> redis-8007.conf

2.2、然后我们需要启动节点

./redis-server redis-8006.conf
./redis-server redis-8007.conf

我们在启动看一下启动的状态

ps -ef | grep redis

在这里插入图片描述

2.3 添加节点

使用add-node参数添加节点
redis-cli --cluster add-node +ip:+要配置的端口号 ip:原先的端口号

./redis-cli --cluster add-node 192.168.2.144:8006 192.168.2.144:8000
./redis-cli --cluster add-node 192.168.2.144:8007 192.168.2.144:8000

输入进去后会有以下页面
在这里插入图片描述

2.4 分配槽

./redis-cli --cluster reshard +ip:节点号

./redis-cli --cluster reshard 192.168.2.144:8000

会出现以下图片,我们计算计算得出还需要配置4000个槽
在这里插入图片描述
下面这个id是你要把这4000个hash槽移动到哪个节点上去,需要指定节点id
写完id后需要你选则done 还是 all

输入all就是从所有主节点中分别抽取平均的槽数到指定的新节点中,抽取的槽数一共为4000个;
或者输入原节点id然后输入done,意思就是将输入的id,抽取的总槽数为4000,推荐使用all

2.5 再把最后剩下的8007从点分配一下

./redis-cli -p 8007 cluster replicate +主节点id

3.关于操作节点

3.1 下线从节点

./redis-cli --cluster del-node +ip:+要下线的从节点的节点号 + 从节点的id

3.2 下线主节点

./redis-cli --cluster reshard +ip:+主节点的节点号

3.3 下线节点

./redis-cli --cluster reshard +ip:+节点号

猜你喜欢

转载自blog.csdn.net/weixin_43731532/article/details/104686309
今日推荐