Redis 集群和高可用
主从模式
可以在 redis.conf 中编写下面的配置项来实现主从模式配置:
| 配置项 | 说明 |
|---|---|
| replicof |
主机地址 |
| masterauth |
主机密码 |
| masteruser |
主机用户名 |
| replica-read-only |
从机是否可以写数据 |
| repl-backlog-size |
数据同步缓冲区大小 |
在 Redis 6.0 中,将原先的
slaveof配置项修改为了replicof
哨兵模式
哨兵模式是 Redis 官方提供的高可用解决方案。
注:哨兵模式并不负责数据相关内容仅仅负责在 Redis 中选举!
可以在 sentinel.conf 中编写下面的配置来实现哨兵模式配置:
| 配置项 | 说明 |
|---|---|
| bind |
监听服务地址 |
| port |
哨兵模式端口 |
| sentinel monitor mymaster |
在 quorum 台设备同时检测到服务下线时进行重新选举 |
| sentinel down-after-milliseconds mymaster |
主机最大无响应时长 |
| sentinel parallel-syncs mymaster |
设置在故障转移后可以重新配置为使用新主服务器的副本数 |
| sentinel failover-timeout mymaster |
故障转移超时配置 |
在配置完成后可以使用如下命令启动哨兵服务。
1 | |
集群模式
相较于哨兵模式,集群模式可以更好的利用系统资源缓解数据写入压力。
可以在 redis.conf 中编写下面的配置项来开启集群模式:
| 配置项 | 说明 |
|---|---|
| cluster-enabled |
集群模式开关 |
| cluster-config-file |
集群模式配置文件名 |
| cluster-node-timeout |
集群超时时间 |
在配置完成上述内容后可以正常启动服务,然后使用如下的命令来创建集群:
1 | |
注:其中 cluster-replicas 参数表示的是1个主机所对应的从机数量。
在命令运行完成后 redis 集群会进行相应初始化操作,可以使用 cli 的方式进行功能验证:
1 | |
注:-c 为集群模式的标识。
Redis 集群和高可用
https://wangqian0306.github.io/2020/redis-cluster/