Docker安装Redis集群

本次环境准备的是Redis:6.0.8、环境是linux7.0 虚拟机 3 台、安装Redis方式为哈希槽分区、3主3从搭建
在这里插入图片描述

1、拉取Redis镜像

docker pull redis:6.0.8

2、创建Redis配置文件

 // 在我博客里找原始redis配置文件、不要修改、直接启动、也可以用自己的
 // 【Docker系列】(六)原始Redis.conf文件 复制即可

// 在宿主机创建Redis配置文件
[root@Hadoop101 apps]# mkdir myredis
// 拷贝已有 redis.conf文件至新建文件夹下
[root@Hadoop101 redis-6.2.7]# cp redis.conf /opt/apps/myredis/

// 后期存放容器配置文件、需新建
[root@Hadoop101 myredis]# ll
总用量 96
drwxr-xr-x. 2 root root  4096 8月  30 21:27 data
-rw-r--r--. 1 root root 93849 8月  30 21:27 redis.conf

3、修改Redis配置文件

 // 注意注释 # bind 127.0.0.1 ::1  允许redis外地连接  必须
  58 # Examples:
  59 #
  60 # bind 192.168.1.100 10.0.0.1     # listens on two specific IPv4 addresses
  61 # bind 127.0.0.1 ::1              # listens on loopback IPv4 and IPv6

// 将daemonize yes注释起来或者 daemonize no设置,因为该配置和docker run中-d参数冲突,会导致容器一直启动失败
################################# GENERAL #####################################
 255 
 256 # By default Redis does not run as a daemon. Use 'yes' if you need it.
 257 # Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
 258 # When Redis is supervised by upstart or systemd, this parameter has no impact.
 259 daemonize no

// 修改完成配置
[root@Hadoop101 myredis]# ll
总用量 96
drwxr-xr-x. 2 root root  4096 8月  30 21:27 data
-rw-r--r--. 1 root root 93849 8月  30 21:48 redis.conf

4、Redis起飞

// 起飞了好几次、没有成功、最后用的原始redis.conf文件、可以在我博客里找redis原始配置文件
//【Docker系列】(六)原始Redis.conf文件 复制即可

[root@Hadoop101 myredis]# docker run -p 6379:6379 --privileged=true -v /opt/apps/myredis/redis.conf:/etc/redis/redis.conf -v /opt/apps/myredis/data:/data -d redis:6.0.8 redis-server /etc/redis/redis.conf
47f3453b4f58ea53841e8b7cafa6bfaca9bee0e56442ba0c81cedd30f19da276
[root@Hadoop101 myredis]# docker ps
CONTAINER ID   IMAGE         COMMAND                  CREATED         STATUS         PORTS                                       NAMES
47f3453b4f58   redis:6.0.8   "docker-entrypoint.s…"   3 seconds ago   Up 2 seconds   0.0.0.0:6379->6379/tcp, :::6379->6379/tcp   jolly_sutherland

5、Redis集群起飞教程

①新建六个Redis容器实例

docker run -d --name redis-node01 --net host --privileged=true -v /opt/apps/myredis/share/redis-node01:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6381

docker run -d --name redis-node02 --net host --privileged=true -v /opt/apps/myredis/share/redis-node02:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6382

docker run -d --name redis-node03 --net host --privileged=true -v /opt/apps/myredis/share/redis-node03:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6383

docker run -d --name redis-node04 --net host --privileged=true -v /opt/apps/myredis/share/redis-node04:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6384

docker run -d --name redis-node05 --net host --privileged=true -v /opt/apps/myredis/share/redis-node05:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6385

docker run -d --name redis-node06 --net host --privileged=true -v /opt/apps/myredis/share/redis-node06:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6386

// 查看结果、起飞成功
[root@Hadoop101 myredis]# docker ps
CONTAINER ID   IMAGE         COMMAND                  CREATED         STATUS         PORTS     NAMES
46d86c7e100a   redis:6.0.8   "docker-entrypoint.s…"   2 seconds ago   Up 2 seconds             redis-node06
72227475ecb4   redis:6.0.8   "docker-entrypoint.s…"   4 seconds ago   Up 3 seconds             redis-node05
ad2b0e84fbf0   redis:6.0.8   "docker-entrypoint.s…"   4 seconds ago   Up 3 seconds             redis-node04
42b49f815719   redis:6.0.8   "docker-entrypoint.s…"   4 seconds ago   Up 4 seconds             redis-node03
b98f2f1fdc36   redis:6.0.8   "docker-entrypoint.s…"   4 seconds ago   Up 4 seconds             redis-node02
989f490c6112   redis:6.0.8   "docker-entrypoint.s…"   5 seconds ago   Up 4 seconds             redis-node01

②构建主从关系

// 进入容器
[root@Hadoop101 myredis]# docker exec -it 989f490c6112 /bin/bash
root@Hadoop101:/data# redis-cli --cluster create 192.168.10.101:6381 192.168.10.101:6382 192.168.10.101:6383 192.168.10.101:6384 192.168.10.101:6385 192.168.10.101:6386 --cluster-replicas 1
>>> Performing hash slots allocation on 6 nodes...
Master[0] -> Slots 0 - 5460
Master[1] -> Slots 5461 - 10922
Master[2] -> Slots 10923 - 16383
Adding replica 192.168.10.101:6385 to 192.168.10.101:6381
Adding replica 192.168.10.101:6386 to 192.168.10.101:6382
Adding replica 192.168.10.101:6384 to 192.168.10.101:6383
>>> Trying to optimize slaves allocation for anti-affinity
[WARNING] Some slaves are in the same host as their master
M: b3f85efdc77b04d220759d369ddf1034fe5106e2 192.168.10.101:6381
   slots:[0-5460] (5461 slots) master
M: 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb 192.168.10.101:6382
   slots:[5461-10922] (5462 slots) master
M: d1de4c92c97c39d23a36beff6fbbd56cce855bd1 192.168.10.101:6383
   slots:[10923-16383] (5461 slots) master
S: 8fa480ebe6c39fa9d8a70a385cfd9b87337e9be8 192.168.10.101:6384
   replicates 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb
S: a12d902181620fc5f8d41206d7c65c29788ab2b2 192.168.10.101:6385
   replicates d1de4c92c97c39d23a36beff6fbbd56cce855bd1
S: 78b13b38c1fd0b8b66acb6148e5b978c2ce7d143 192.168.10.101:6386
   replicates b3f85efdc77b04d220759d369ddf1034fe5106e2
Can I set the above configuration? (type 'yes' to accept): 

// 主
M: b3f85efdc77b04d220759d369ddf1034fe5106e2 192.168.10.101:6381
M: 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb 192.168.10.101:6382
M: d1de4c92c97c39d23a36beff6fbbd56cce855bd1 192.168.10.101:6383
// 从
S: 8fa480ebe6c39fa9d8a70a385cfd9b87337e9be8 192.168.10.101:6384
S: 78b13b38c1fd0b8b66acb6148e5b978c2ce7d143 192.168.10.101:6386
S: a12d902181620fc5f8d41206d7c65c29788ab2b2 192.168.10.101:6385

在这里插入图片描述

root@Hadoop101:/data# redis-cli -p 6381
127.0.0.1:6381> cluster info
cluster_state:ok
cluster_slots_assigned:16384
cluster_slots_ok:16384
cluster_slots_pfail:0
cluster_slots_fail:0
cluster_known_nodes:6
cluster_size:3
cluster_current_epoch:6
cluster_my_epoch:1
cluster_stats_messages_ping_sent:1949
cluster_stats_messages_pong_sent:1982
cluster_stats_messages_sent:3931
cluster_stats_messages_ping_received:1977
cluster_stats_messages_pong_received:1949
cluster_stats_messages_meet_received:5
cluster_stats_messages_received:3931
127.0.0.1:6381> cluster nodes
6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb 192.168.10.101:6382@16382 master - 0 1661952421000 2 connected 5461-10922
8fa480ebe6c39fa9d8a70a385cfd9b87337e9be8 192.168.10.101:6384@16384 slave 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb 0 1661952419000 2 connected
b3f85efdc77b04d220759d369ddf1034fe5106e2 192.168.10.101:6381@16381 myself,master - 0 1661952420000 1 connected 0-5460
78b13b38c1fd0b8b66acb6148e5b978c2ce7d143 192.168.10.101:6386@16386 slave b3f85efdc77b04d220759d369ddf1034fe5106e2 0 1661952422003 1 connected
a12d902181620fc5f8d41206d7c65c29788ab2b2 192.168.10.101:6385@16385 slave d1de4c92c97c39d23a36beff6fbbd56cce855bd1 0 1661952420000 3 connected
d1de4c92c97c39d23a36beff6fbbd56cce855bd1 192.168.10.101:6383@16383 master - 0 1661952423020 3 connected 10923-16383

③集群启动

// 为单机启动、会有数据存不进去
root@Hadoop101:/data# redis-cli -p 6381

// 集群启动
root@Hadoop101:/data# redis-cli -p 6381 -c

root@Hadoop101:/data# redis-cli --cluster check 192.168.10.101:6381
192.168.10.101:6381 (b3f85efd...) -> 0 keys | 5461 slots | 1 slaves.
192.168.10.101:6382 (6783640f...) -> 0 keys | 5462 slots | 1 slaves.
192.168.10.101:6383 (d1de4c92...) -> 0 keys | 5461 slots | 1 slaves.
[OK] 0 keys in 3 masters.
0.00 keys per slot on average.
>>> Performing Cluster Check (using node 192.168.10.101:6381)
M: b3f85efdc77b04d220759d369ddf1034fe5106e2 192.168.10.101:6381
   slots:[0-5460] (5461 slots) master
   1 additional replica(s)
M: 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb 192.168.10.101:6382
   slots:[5461-10922] (5462 slots) master
   1 additional replica(s)
S: 8fa480ebe6c39fa9d8a70a385cfd9b87337e9be8 192.168.10.101:6384
   slots: (0 slots) slave
   replicates 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb
S: 78b13b38c1fd0b8b66acb6148e5b978c2ce7d143 192.168.10.101:6386
   slots: (0 slots) slave
   replicates b3f85efdc77b04d220759d369ddf1034fe5106e2
S: a12d902181620fc5f8d41206d7c65c29788ab2b2 192.168.10.101:6385
   slots: (0 slots) slave
   replicates d1de4c92c97c39d23a36beff6fbbd56cce855bd1
M: d1de4c92c97c39d23a36beff6fbbd56cce855bd1 192.168.10.101:6383
   slots:[10923-16383] (5461 slots) master
   1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.

6、Redis主从扩容

[root@Hadoop101 myredis]# docker run -d --name redis-node07 --net host --privileged=true -v /opt/apps/myredis/share/redis-node07:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6387
/share/redis-node08:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6388
577f26b5d9bb9fe51f82642ebf512d246ebc74a853145e56a589e0bad0871ee5
[root@Hadoop101 myredis]# 
[root@Hadoop101 myredis]# docker run -d --name redis-node08 --net host --privileged=true -v /opt/apps/myredis/share/redis-node08:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6388
9d291abc224ea12f52c8f09971960d3b9e5ba0d9bafd331d8bbe8c7d8e4bce24
[root@Hadoop101 myredis]# docker ps
CONTAINER ID   IMAGE         COMMAND                  CREATED         STATUS         PORTS     NAMES
9d291abc224e   redis:6.0.8   "docker-entrypoint.s…"   3 seconds ago   Up 2 seconds             redis-node08
577f26b5d9bb   redis:6.0.8   "docker-entrypoint.s…"   4 seconds ago   Up 3 seconds             redis-node07
46d86c7e100a   redis:6.0.8   "docker-entrypoint.s…"   2 hours ago     Up 2 hours               redis-node06
72227475ecb4   redis:6.0.8   "docker-entrypoint.s…"   2 hours ago     Up 2 hours               redis-node05
ad2b0e84fbf0   redis:6.0.8   "docker-entrypoint.s…"   2 hours ago     Up 2 hours               redis-node04
42b49f815719   redis:6.0.8   "docker-entrypoint.s…"   2 hours ago     Up 2 hours               redis-node03
b98f2f1fdc36   redis:6.0.8   "docker-entrypoint.s…"   2 hours ago     Up 2 hours               redis-node02
989f490c6112   redis:6.0.8   "docker-entrypoint.s…"   2 hours ago     Up 2 hours               redis-node01

①加入集群

[root@Hadoop101 myredis]# docker exec -it redis-node07 bash
root@Hadoop101:/data# redis-cli --cluster add-node 192.168.10.101:6387 192.168.10.101:6381
>>> Adding node 192.168.10.101:6387 to cluster 192.168.10.101:6381
>>> Performing Cluster Check (using node 192.168.10.101:6381)
M: b3f85efdc77b04d220759d369ddf1034fe5106e2 192.168.10.101:6381
   slots:[0-5460] (5461 slots) master
   1 additional replica(s)
M: 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb 192.168.10.101:6382
   slots:[5461-10922] (5462 slots) master
   1 additional replica(s)
S: 8fa480ebe6c39fa9d8a70a385cfd9b87337e9be8 192.168.10.101:6384
   slots: (0 slots) slave
   replicates 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb
S: 78b13b38c1fd0b8b66acb6148e5b978c2ce7d143 192.168.10.101:6386
   slots: (0 slots) slave
   replicates b3f85efdc77b04d220759d369ddf1034fe5106e2
S: a12d902181620fc5f8d41206d7c65c29788ab2b2 192.168.10.101:6385
   slots: (0 slots) slave
   replicates d1de4c92c97c39d23a36beff6fbbd56cce855bd1
M: d1de4c92c97c39d23a36beff6fbbd56cce855bd1 192.168.10.101:6383
   slots:[10923-16383] (5461 slots) master
   1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
>>> Send CLUSTER MEET to node 192.168.10.101:6387 to make it join the cluster.
[OK] New node added correctly.

②重新分配Hash槽

redis-cli --cluster reshard 192.168.10.101:6381

// 我的安装完成、没有截图、参考下面图片
// ? 16384 / 4 是4096、正好分四个槽
// ? ID 选取新增master 6387 的id 号
// ? 选取 all

在这里插入图片描述
在这里插入图片描述

③为新增节点配置Salve

// 记得查看 ip 顺序  id为 6387 主机的id  可以用 redis-cli --cluster check 192.168.10.101:6387 查询 

root@Hadoop101:/data# redis-cli --cluster add-node 192.168.10.101:6388 192.168.10.101:6387 --cluster-slave --cluster-master-id c86f20bc5be78ee6ab2acf1608382b3ee7a49907
>>> Adding node 192.168.10.101:6388 to cluster 192.168.10.101:6387
>>> Performing Cluster Check (using node 192.168.10.101:6387)
M: c86f20bc5be78ee6ab2acf1608382b3ee7a49907 192.168.10.101:6387
   slots:[0-1364],[5461-6826],[10923-12287] (4096 slots) master
M: 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb 192.168.10.101:6382
   slots:[6827-10922] (4096 slots) master
   1 additional replica(s)
S: a12d902181620fc5f8d41206d7c65c29788ab2b2 192.168.10.101:6385
   slots: (0 slots) slave
   replicates d1de4c92c97c39d23a36beff6fbbd56cce855bd1
S: 8fa480ebe6c39fa9d8a70a385cfd9b87337e9be8 192.168.10.101:6384
   slots: (0 slots) slave
   replicates 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb
S: 78b13b38c1fd0b8b66acb6148e5b978c2ce7d143 192.168.10.101:6386
   slots: (0 slots) slave
   replicates b3f85efdc77b04d220759d369ddf1034fe5106e2
M: b3f85efdc77b04d220759d369ddf1034fe5106e2 192.168.10.101:6381
   slots:[1365-5460] (4096 slots) master
   1 additional replica(s)
M: d1de4c92c97c39d23a36beff6fbbd56cce855bd1 192.168.10.101:6383
   slots:[12288-16383] (4096 slots) master
   1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
>>> Send CLUSTER MEET to node 192.168.10.101:6388 to make it join the cluster.
Waiting for the cluster to join

>>> Configure node as replica of 192.168.10.101:6387.
[OK] New node added correctly.

④扩容成功

root@Hadoop101:/data# redis-cli --cluster check 192.168.10.101:6387
192.168.10.101:6387 (c86f20bc...) -> 0 keys | 4096 slots | 1 slaves.
192.168.10.101:6382 (6783640f...) -> 0 keys | 4096 slots | 1 slaves.
192.168.10.101:6381 (b3f85efd...) -> 0 keys | 4096 slots | 1 slaves.
192.168.10.101:6383 (d1de4c92...) -> 0 keys | 4096 slots | 1 slaves.
[OK] 0 keys in 4 masters.
0.00 keys per slot on average.
>>> Performing Cluster Check (using node 192.168.10.101:6387)
M: c86f20bc5be78ee6ab2acf1608382b3ee7a49907 192.168.10.101:6387
   slots:[0-1364],[5461-6826],[10923-12287] (4096 slots) master
   1 additional replica(s)
M: 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb 192.168.10.101:6382
   slots:[6827-10922] (4096 slots) master
   1 additional replica(s)
S: a12d902181620fc5f8d41206d7c65c29788ab2b2 192.168.10.101:6385
   slots: (0 slots) slave
   replicates d1de4c92c97c39d23a36beff6fbbd56cce855bd1
S: 8fa480ebe6c39fa9d8a70a385cfd9b87337e9be8 192.168.10.101:6384
   slots: (0 slots) slave
   replicates 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb
S: d028ac567a54f3e904f7239349e4f76300d03be2 192.168.10.101:6388
   slots: (0 slots) slave
   replicates c86f20bc5be78ee6ab2acf1608382b3ee7a49907
S: 78b13b38c1fd0b8b66acb6148e5b978c2ce7d143 192.168.10.101:6386
   slots: (0 slots) slave
   replicates b3f85efdc77b04d220759d369ddf1034fe5106e2
M: b3f85efdc77b04d220759d369ddf1034fe5106e2 192.168.10.101:6381
   slots:[1365-5460] (4096 slots) master
   1 additional replica(s)
M: d1de4c92c97c39d23a36beff6fbbd56cce855bd1 192.168.10.101:6383
   slots:[12288-16383] (4096 slots) master
   1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.

7、Redis主从缩容

  • 先清除从节点6388
  • 清出来的槽号重新分配
  • 再删除6387
  • 恢复成3主3从

①先删除6388节点

root@Hadoop101:/data# redis-cli --cluster del-node 192.168.10.101:6388 d028ac567a54f3e904f7239349e4f76300d03be2>>> Removing node d028ac567a54f3e904f7239349e4f76300d03be2 from cluster 192.168.10.101:6388
>>> Sending CLUSTER FORGET messages to the cluster...
>>> Sending CLUSTER RESET SOFT to the deleted node.

// 查看下线情况

root@Hadoop101:/data# redis-cli --cluster del-node 192.168.10.101:6388 d028ac567a54f3e904f7239349e4f76300d03be2>>> Removing node d028ac567a54f3e904f7239349e4f76300d03be2 from cluster 192.168.10.101:6388
>>> Sending CLUSTER FORGET messages to the cluster...
>>> Sending CLUSTER RESET SOFT to the deleted node.
root@Hadoop101:/data# redis-cli --cluster check 192.168.10.101:6382
192.168.10.101:6382 (6783640f...) -> 0 keys | 4096 slots | 1 slaves.
192.168.10.101:6387 (c86f20bc...) -> 0 keys | 4096 slots | 0 slaves.
192.168.10.101:6381 (b3f85efd...) -> 0 keys | 4096 slots | 1 slaves.
192.168.10.101:6383 (d1de4c92...) -> 0 keys | 4096 slots | 1 slaves.
[OK] 0 keys in 4 masters.
0.00 keys per slot on average.
>>> Performing Cluster Check (using node 192.168.10.101:6382)
M: 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb 192.168.10.101:6382
   slots:[6827-10922] (4096 slots) master
   1 additional replica(s)
S: 8fa480ebe6c39fa9d8a70a385cfd9b87337e9be8 192.168.10.101:6384
   slots: (0 slots) slave
   replicates 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb
S: a12d902181620fc5f8d41206d7c65c29788ab2b2 192.168.10.101:6385
   slots: (0 slots) slave
   replicates d1de4c92c97c39d23a36beff6fbbd56cce855bd1
S: 78b13b38c1fd0b8b66acb6148e5b978c2ce7d143 192.168.10.101:6386
   slots: (0 slots) slave
   replicates b3f85efdc77b04d220759d369ddf1034fe5106e2
M: c86f20bc5be78ee6ab2acf1608382b3ee7a49907 192.168.10.101:6387
   slots:[0-1364],[5461-6826],[10923-12287] (4096 slots) master
M: b3f85efdc77b04d220759d369ddf1034fe5106e2 192.168.10.101:6381
   slots:[1365-5460] (4096 slots) master
   1 additional replica(s)
M: d1de4c92c97c39d23a36beff6fbbd56cce855bd1 192.168.10.101:6383
   slots:[12288-16383] (4096 slots) master
   1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.

②重新分配槽位

在这里插入图片描述
在这里插入图片描述

root@Hadoop101:/data# redis-cli --cluster reshard 192.168.10.101:6381
>>> Performing Cluster Check (using node 192.168.10.101:6381)
M: b3f85efdc77b04d220759d369ddf1034fe5106e2 192.168.10.101:6381
   slots:[1365-5460] (4096 slots) master
   1 additional replica(s)
M: 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb 192.168.10.101:6382
   slots:[6827-10922] (4096 slots) master
   1 additional replica(s)
S: 8fa480ebe6c39fa9d8a70a385cfd9b87337e9be8 192.168.10.101:6384
   slots: (0 slots) slave
   replicates 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb
M: c86f20bc5be78ee6ab2acf1608382b3ee7a49907 192.168.10.101:6387
   slots:[0-1364],[5461-6826],[10923-12287] (4096 slots) master
S: 78b13b38c1fd0b8b66acb6148e5b978c2ce7d143 192.168.10.101:6386
   slots: (0 slots) slave
   replicates b3f85efdc77b04d220759d369ddf1034fe5106e2
S: a12d902181620fc5f8d41206d7c65c29788ab2b2 192.168.10.101:6385
   slots: (0 slots) slave
   replicates d1de4c92c97c39d23a36beff6fbbd56cce855bd1
M: d1de4c92c97c39d23a36beff6fbbd56cce855bd1 192.168.10.101:6383
   slots:[12288-16383] (4096 slots) master
   1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
How many slots do you want to move (from 1 to 16384)? 4096
What is the receiving node ID? b3f85efdc77b04d220759d369ddf1034fe5106e2
Please enter all the source node IDs.
  Type 'all' to use all the nodes as source nodes for the hash slots.
  Type 'done' once you entered all the source nodes IDs.
Source node #1: c86f20bc5be78ee6ab2acf1608382b3ee7a49907
Source node #2: done

③删除6387

root@Hadoop101:/data# redis-cli --cluster del-node 192.168.10.101:6387 c86f20bc5be78ee6ab2acf1608382b3ee7a49907>>> Removing node c86f20bc5be78ee6ab2acf1608382b3ee7a49907 from cluster 192.168.10.101:6387
>>> Sending CLUSTER FORGET messages to the cluster...
>>> Sending CLUSTER RESET SOFT to the deleted node.

// 查看集群
root@Hadoop101:/data# redis-cli --cluster check 192.168.10.101:6381
192.168.10.101:6381 (b3f85efd...) -> 0 keys | 8192 slots | 1 slaves.
192.168.10.101:6382 (6783640f...) -> 0 keys | 4096 slots | 1 slaves.
192.168.10.101:6383 (d1de4c92...) -> 0 keys | 4096 slots | 1 slaves.
[OK] 0 keys in 3 masters.
0.00 keys per slot on average.
>>> Performing Cluster Check (using node 192.168.10.101:6381)
M: b3f85efdc77b04d220759d369ddf1034fe5106e2 192.168.10.101:6381
   slots:[0-6826],[10923-12287] (8192 slots) master
   1 additional replica(s)
M: 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb 192.168.10.101:6382
   slots:[6827-10922] (4096 slots) master
   1 additional replica(s)
S: 8fa480ebe6c39fa9d8a70a385cfd9b87337e9be8 192.168.10.101:6384
   slots: (0 slots) slave
   replicates 6783640f1c4ccea95d5f977a9bcd9e4c80dd63eb
S: 78b13b38c1fd0b8b66acb6148e5b978c2ce7d143 192.168.10.101:6386
   slots: (0 slots) slave
   replicates b3f85efdc77b04d220759d369ddf1034fe5106e2
S: a12d902181620fc5f8d41206d7c65c29788ab2b2 192.168.10.101:6385
   slots: (0 slots) slave
   replicates d1de4c92c97c39d23a36beff6fbbd56cce855bd1
M: d1de4c92c97c39d23a36beff6fbbd56cce855bd1 192.168.10.101:6383
   slots:[12288-16383] (4096 slots) master
   1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐