redis-cluster集群搭建(3主3从),并使用springboot整合

一、集群搭建

1. 准备3台服务器

        

 这里我采用了3台云服务器。

2. 为三台服务器安装好redis

没有安装好redis的这里可以参考我以前写的

Linux安装Redis 6.0.6_小菜学Java的博客-CSDN博客

并执行:mkdir -p /myredis/cluster

3. 新建6个独立的redis实例服务

服务器A:vim /myredis/cluster/redisCluster6381.conf

                 vim /myredis/cluster/redisCluster6382.conf

服务器B:vim /myredis/cluster/redisCluster6383.conf

                 vim /myredis/cluster/redisCluster6384.conf

服务器C:vim /myredis/cluster/redisCluster6385.conf

                 vim /myredis/cluster/redisCluster6386.conf

ps:各配置文件根据各自端口进行修改

bind 0.0.0.0
daemonize yes
protected-mode no
port 6381
logfile "/myredis/cluster/cluster6381.log"
pidfile /myredis/cluster6381.pid
dir /myredis/cluster
dbfilename dump6381.rdb
appendonly yes
appendfilename "appendonly6381.aof"
requirepass 111111
masterauth 111111
 
cluster-enabled yes
cluster-config-file nodes-6381.conf
cluster-node-timeout 5000
#一定要添加cluster-announce-ip:外网ip,否则使用springboot链接时会循环抛出connection timed out警告,ip改为你自己的服务器ip
cluster-announce-ip 117.72.13.217

4. 开放端口

以客户端端口为6380的为例:分别开放 6380 和 16380端口(16380为集群总线端口)

6381 对应的集群总线端口则为 16381

5. 分别启动6个客户端

redis-server /myredis/cluster/redisCluster6381.conf

........

redis-server /myredis/cluster/redisCluster6386.conf

6. 构建主从关系命令

注意:将ip换为你自己的服务器ip

redis-cli -a 111111 --cluster create --cluster-replicas 1 192.168.111.175:6381 192.168.111.175:6382 192.168.111.172:6383 192.168.111.172:6384 192.168.111.174:6385 192.168.111.174:6386

出现一下内容则构建成功

7. 查看并检验集群状态

链接进入6381作为切入点,查看节点状态:redis-cli -a 111111 -p 6381

查看主从关系:info replication

查看集群信息:cluster info,cluster nodes

二、springboot链接集群

1. pom依赖

 
        
            org.springframework.boot
            spring-boot-starter-data-redis
        

2. ylm文件(注意修改IP,端口,密码)

spring:
  redis:
    password: 111111
    cluster:
      max-redirects: 3
      nodes: 101.34.88.185:6381,101.34.88.185:6382,36.133.64.12:6383,36.133.64.12:6384,117.72.13.211:6385,117.72.13.211:6386
    lettuce:
      pool:
        min-idle: 0
        max-idle: 8
        max-wait: -1ms
        max-active: 8
      cluster:
        refresh:
          adaptive: true #支持集群拓扑动态感应刷新,自适应拓扑刷新是否使用所有可用的更新,默认false关闭
          period: 2000 #定时刷新

你可能感兴趣的:(redis,数据库,缓存)