redis-server
redis-server --port 6380 --slaveof 127.0.0.1 6379
redis-server --port 6381 --slaveof 127.0.0.1 6379
启动3个实例
6379的端口上有2个从机
编辑配置
vi sentinel.conf
确认sentinel monitor mymaster 127.0.0.1 6379 1
redis-sentinel sentinel.conf
哨兵已经启动并且找到了2个从实例
容我搞个破坏,把6381的实例停止
等了30秒之后,哨兵发现了从实例的宕机
当从实例启动的时候,哨兵也有日志记录
我把主实例停了,端口6379 故意宕机
日志显示master挂了
6381端口上的从实例,经过选举成为master
6379默认实例起来,6381 从实例显示2个从实例连接成功
重新cat 一把配置,发现哨兵会把已知的实例写入配置文件中,还算是智能
配置文件中
sentinel monitor mymaster 127.0.0.1 6381 1
ip 端口 仲裁数量
仲裁数量表示节点挂了需要几个哨兵同意,一般为N/2+1,3个节点需要设置成2
# sentinel down-after-milliseconds <master-name> <milliseconds>
60秒没有反应视为挂了
sentinel down-after-milliseconds mymaster 60000
原文地址:http://blog.51cto.com/433266/2094152