目录

 

1. 准备

2. 修改配置文件

3. 配置集群节点

4. 开始使用集群


1. 准备

#当前环境
[root@redis-cluster1 redis-5.0.5]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
#redis根目录
mkdir -p software/redis

准备6台虚拟机

redis-cluster1

192.168.10.13

redis-cluster2

192.168.10.14

redis-cluster3

192.168.10.15

redis-cluster4

192.168.10.16

redis-cluster5

192.168.10.17

redis-cluster6

192.168.10.18

每台虚拟机按照单例模式安装redis,可以参照【redis安装并创建服务】。

2. 修改配置文件

按照单例模式安装的redis,生成的配置文件没有打开集群模式,需要调整。

查看redis配置文件:cat /etc/redis/6379.conf ,找到集群配置项(官方配置文件约827行或者搜索“REDIS CLUSTER”)

redis集群创建 redis集群如何搭建_bc

大约100多行,大部分是注释,很详细,具体配置项包括:

#做为集群节点启动,必须
cluster-enabled yes
#节点配置文件。这个是节点自动创建的文件,不用收到编辑
#注意,如果同一台机器上部署集群的多个节点,每个节点的配置文件要区分,配置不同的配置文件
cluster-config-file nodes-6379.conf
#超时时间 单位:毫秒
cluster-node-timeout 15000
cluster-replica-validity-factor 10
cluster-migration-barrier 1
cluster-require-full-coverage yes
cluster-replica-no-failover no


修改配置文件后启动redis服务

3. 配置集群节点

#创建客户端链接,方便执行redis-cli
ln -s /root/software/redis/redis-5.0.5/src/redis-cli /usr/bin/
#配置集群
redis-cli  --cluster create --cluster-replicas 1 192.168.10.13:6379 192.168.10.14:6379 192.168.10.15:6379 192.168.10.16:6379 192.168.10.17:6379 192.168.10.18:6379

redis集群创建 redis集群如何搭建_redis集群创建_02

启动是如果出现以上提示,可以根据提示选择其中一种操作进行处理,此处选择第二种,修改配置文件:

#vi /etc/redis/6379.conf
protected-mode no

重启服务后再次尝试

redis集群创建 redis集群如何搭建_redis集群_03

输入"yes"后等待其它节点加入。所有节点加入后,检查集群状态

[root@redis-cluster1 utils]# redis-cli
#检查各个节点
127.0.0.1:6379> cluster meet 192.168.10.13 6379
OK
127.0.0.1:6379> cluster meet 192.168.10.14 6379
OK
127.0.0.1:6379> cluster meet 192.168.10.15 6379
OK
127.0.0.1:6379> cluster meet 192.168.10.16 6379
OK
127.0.0.1:6379> cluster meet 192.168.10.17 6379
OK
127.0.0.1:6379> cluster meet 192.168.10.18 6379
OK
127.0.0.1:6379> cluster nodes
#查看集群中所有节点信息
f81ea165521bcc8e71d3ba201f22c293b15c2751 192.168.10.15:6379@16379 master - 0 1558507743000 3 connected 10923-16383
8a2c3948ffda9ebfc525d18e895aa8cf304ddfeb 192.168.10.14:6379@16379 master - 0 1558507743000 2 connected 5461-10922
a009eaf01d51181deda0572437e9fa661320d6fc 192.168.10.18:6379@16379 slave 8a2c3948ffda9ebfc525d18e895aa8cf304ddfeb 0 1558507742000 6 connected
3d6074ab8a71a059a387fa2077bc3abd2dbd3942 192.168.10.17:6379@16379 slave f22fdc8fa5453428a89fc45c0f3eee7f46bd8a3a 0 1558507743992 5 connected
f22fdc8fa5453428a89fc45c0f3eee7f46bd8a3a 192.168.10.13:6379@16379 myself,master - 0 1558507741000 1 connected 0-5460
c4c00431b81544ac6e4a62b4b1c4b3bdc7860cc6 192.168.10.16:6379@16379 slave f81ea165521bcc8e71d3ba201f22c293b15c2751 0 1558507741977 4 connected
127.0.0.1:6379> 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:433
cluster_stats_messages_pong_sent:501
cluster_stats_messages_meet_sent:6
cluster_stats_messages_sent:940
cluster_stats_messages_ping_received:468
cluster_stats_messages_pong_received:439
cluster_stats_messages_meet_received:33
cluster_stats_messages_received:940
127.0.0.1:6379>

能正常查看集群信息,redis集群搭建完成!

4. 开始使用集群

在任一节点设置key,然后通过另一节点查看value

注意:集群模式进入redis-cli客户端,需要加上-c参数

#在192.168.10.13设置key
[root@redis-cluster1 ~]# redis-cli -c
127.0.0.1:6379> set abc 123
-> Redirected to slot [7638] located at 192.168.10.14:6379
OK
192.168.10.14:6379>
#在192.168.10.14查看value
[root@redis-cluster2 ~]# redis-cli -c 
127.0.0.1:6379> get abc
"123"
127.0.0.1:6379>