节点数:3(常见为6)

redis版本:5.0.4

docker-compose写法(另外的2个替换name和ports即可)

version: '3.1'
services:
  master:
    image: redis:5.0.4
    container_name: master_redis_6380
    restart: always
    ports: 
      - 6380:6380
      - 16380:16380
    volumes:
      - ./data:/data
      - ./redis.conf:/usr/local/etc/redis/redis.conf
    command:
      redis-server /usr/local/etc/redis/redis.conf

redis-config写法(另外的2个替换port和cluster-announce-port/bus-port即可)


port "6380"
#password 密码
requirepass "bchs@0!9"
#连接集群密码
masterauth "bchs@0!9"
# 关闭保护模式 默认值 yes,即开启。开启保护模式以后,需配置 bind ip 或者设置访问密码;关闭保护模式,外部网络可以直接访问
protected-mode "no"
# 是否以守护线程的方式启动(后台启动),默认 no;
daemonize "no"
# 开启集群
cluster-enabled "yes"
# 集群节点配置 redis自动生成.conf文件
cluster-config-file "nodes.conf"
# 超时
cluster-node-timeout "15000"
# 集群节点IP 填写宿主机IP
cluster-announce-ip "192.168.31.200"
# 集群节点映射端口
cluster-announce-port "6380"
# 集群节点总线端口
cluster-announce-bus-port "16380"

#持久化
appendonly "yes"
#持久化文件名称
appendfilename "appendonly.aof"
#2022-04-06 add
appendfsync "always" 
#AOF持久化策略
auto-aof-rewrite-percentage "100" 
#触发AOF文件重写的条件(默认)
auto-aof-rewrite-min-size "64mb" 
#触发AOF文件重写的条件(默认)

分别运行docker-compose.yml后 进入任意一个redis节点输入:

redis-cli -a ‘bchs@0!9’ –cluster create 192.168.31.200:6380 192.168.31.200:6381 192.168.31.200:6382 

其中-a 后面是连接密码 create后面是 集群ip:端口

如果是标准的三主三从则输入:

redis-cli -a ‘bchs@0!9’ –cluster create 192.168.31.200:6380 192.168.31.200:6381 192.168.31.200:6382 192.168.31.200:6383 192.168.31.200:6384 192.168.31.200:6385–cluster-replicas 1

cluster-replicas 1: 1代表着一个从的复制,但要6个节点。

补充 进入redis节点的命令:

docker exec -it dockerID bash

 最后在任何节点进行验证

cluster info(查看集群信息)

cluster nodes(查看节点列表)

192.168.31.200:6382> cluster info
cluster_state:ok
cluster_slots_assigned:16384
cluster_slots_ok:16384
cluster_slots_pfail:0
cluster_slots_fail:0
cluster_known_nodes:3
cluster_size:3
cluster_current_epoch:3
cluster_my_epoch:3
cluster_stats_messages_ping_sent:708
cluster_stats_messages_pong_sent:659
cluster_stats_messages_meet_sent:1
cluster_stats_messages_sent:1368
cluster_stats_messages_ping_received:658
cluster_stats_messages_pong_received:709
cluster_stats_messages_meet_received:1
cluster_stats_messages_received:1368

 搭建demo版完成


版权声明:本文为CurryFanse原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/CurryFanse/article/details/124291994