节点数: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 版权协议,转载请附上原文出处链接和本声明。