redis 集群目标、集群查看、配置方法及过程、哨兵配置启动

集群目标

主从复制,读写分离;故障切换(通过哨兵实现)


查看集群状态

info replication


配置方法

只设置从数据库就可以了;最佳实践,在主数据库配置masterauth <master-password>,这样在主库挂了后又重启状态就不会是down


配置过程

注意,要求主从数据库的密码一致,哨兵要求

1、配置文件方式
slaveof <master ip> <masterport> 主库的ip和端口
masterauth <master-password> 主库的密码
slave-read-only yew 从库只读,默认

2、命令行方式
slaveof host port 将当前库设置为host、port对应的实例的从库
config set masterauth <master-password>
config rewrite
slaveof no one 取消当前库的从库身份,已同步的数据保留
config rewrite


哨兵配置(实现故障切换)

port 26379 // 哨兵端口号
protected-mode no // 允许其它ip访问
dir /tmp
sentinel monitor mymaster 192.168.1.200 6379 1 // 主数据库名字、ip、端口、几个哨兵认为主数据库挂了就挂了;从节点不需要指定,sentinel会自动识别
sentinel auth-pass mymaster 12345 // 主从库密码
sentinel down-after-milliseconds mymaster 30000 // 判定下线时间
sentinel failover-timeout mymaster 180000 // 故障迁移时间


启动哨兵

./src/redis-server sentinel.conf --sentinel


哨兵要求主从节点的密码是相同的

一般会配置多个哨兵,防止哨兵误判,比如它自己的网络有问题
多个哨兵不需要多个redis软件,只要添加多个sentinel.conf,启动哨兵时后面跟上不同的配置文件即可
哨兵需要提供对外的接口,master、slave都不需要对外提供接口,master和slave都是由哨兵来统一管理

原文地址:https://www.cnblogs.com/Mike_Chang/p/9560899.html