因公司业务发展需要,我们对缓存的数据越来越大,所以单机的缓存已经不再适用,所以进行了Redis-Cluster集群的使用

搭建Redis

要求

  • Redis-Cluster 集群要求最低三主三从(即3个Master和3个Node)

  • 如果自己测试或者把玩,可将6个Redis服务放在同一台服务器上面,生产环境不建议这样做

redis.conf文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# redis端口
port 6381
# 关闭保护模式
protected-mode no
#设置密码
requirepass 123456
##集群密码
masterauth 123456
# 开启集群
cluster-enabled yes
# 集群节点配置
cluster-config-file nodes.conf
# 超时
cluster-node-timeout 5000
# 集群节点IP host模式为宿主机IP
cluster-announce-ip 192.168.100.18
# 集群节点端口
cluster-announce-port 6381
cluster-announce-bus-port 16381
# 开启 appendonly 备份模式
appendonly yes
# 每秒钟备份
appendfsync everysec
# 对aof文件进行压缩时,是否执行同步操作
no-appendfsync-on-rewrite no
# 当目前aof文件大小超过上一次重写时的aof文件大小的100%时会再次进行重写
auto-aof-rewrite-percentage 100
# 重写前AOF文件的大小最小值 默认 64mb
auto-aof-rewrite-min-size 64mb

注意:

  • port与cluster-announce-port 要保持一致

  • cluster-announce-bus-port 一般为: port + 10000

方式搭建Redis命令

1
2
3
4
5
6
7
8
9
docker run \
-d \
--net host \
-v `pwd`/conf/redis.conf:/etc/redis/redis.conf \
-v `pwd`/conf/redis.conf:/usr/local/etc/redis/redis.conf \
-v `pwd`/data:/data \
--restart=always \
--name redis-cluster1 \
redis redis-server /etc/redis/redis.conf --appendonly yes