redis监控,通知,自动故障迁移
redis sentinel是一个分布式系统,可以在一个架构中运行多个sentinel进程
redis sentinel是一个可执行文件,实际上是一个运行在特殊模式下的redis服务器,可以再运行redis-server --sentinle指定
两种启动方式
redis-sentinel程序文件
redis-server /path/to/sentinel.conf --sentinel
必须指定配置文件,保存sentinel运行状态
sentinel.conf配置
sentinel monitor 主服务器名称 127.0.0.1 6379 2
sentinel down-after-millonseconds 30000
sentinel failover-timeout 主服务器名称 180000
sentinel parallel-syncs 主服务器名称 1
判断主服断线---------->失效----------->故障转移
30秒断线 2台哨兵 多数sentinel支持
sentinel monitor mymaster 192.168.0.231 6379 2
can't get resource from poll,修改配置127.0.0.1--->192.168.0.231
启动方式
src/redis-server redis.conf & //启动redis服务一主多从
src/redis-sentinel sentinel.conf & //启动多个进程哨兵
//应用程序连接多个进程哨兵
Set<String> sentinels = new HashSet<String>();
sentinels.add("192.168.0.231:26379");
sentinels.add("192.168.0.231:26380");
JedisSentinelPool jedisSentinelPool = new JedisSentinelPool("mymaster", sentinels);