实现妨碍规复自动化:详解Redis哨兵技能
个中,sentinel monitor mymaster 192.168. 92.128 6379 2设置的寄义是:该哨兵节点监控192.168.92.128:6379这个主节点,该主节点的名称是mymaster,最后的2的寄义与主节点的妨碍鉴定有关:至少必要2个哨兵节点赞成,才气鉴定主节点妨碍并举办妨碍转移。 哨兵节点的启动有两种方法,二者浸染是完全沟通的:
凭证上述方法设置和启动之后,整个哨兵体系就启动完毕了。可以通过Redis-cli毗连哨兵节点举办验证,如下图所示:可以看出26379哨兵节点已经在监控mymaster主节点(即192.168.92.128:6379),并发明白其2个从节点和其它2个哨兵节点。 此时假如查察哨兵节点的设置文件,会发明一些变革,以26379为例: 个中,dir只是显式声明白数据和日记地址的目次(在哨兵语境下只有日记);known-slave和known-sentinel表现哨兵已经发明白从节点和其他哨兵;带有epoch的参数与设置纪元有关(设置纪元是一个从0开始的计数器,每举办一次率领者哨兵推举,城市+1;率领者哨兵推举是妨碍转移阶段的一个操纵,在后文道理部门会先容)。 3.演示妨碍转移 哨兵的4个浸染中,设置提供者和关照必要客户端的共同,本文将在下一章先容客户端会见哨兵体系的要领时具体先容。这一末节将演示当主节点产生妨碍时,哨兵的监控和自动妨碍转移成果。 Step1:起首,行使kill呼吁杀掉主节点: Step2:假云云时当即在哨兵节点中行使info Sentinel呼吁查察,会发明主节点还没有切换过来,由于哨兵发明主节点妨碍并转移,必要一段时刻。 Step3:一段时刻往后,再次在哨兵节点中执行info Sentinel查察,发明主节点已经切换成6380节点。 可是同时可以发明,哨兵节点以为新的主节点如故有2个从节点,这是由于哨兵在将6380切换成主节点的同时,将6379节点置为其从节点;固然6379从节点已经挂掉,可是因为哨兵并不会对从节点举办客观下线(其寄义将在道理部门先容),因此以为该从节点一向存在。当6379节点从头启动后,会自动酿成6380节点的从节点。下面验证一下。 Step4:重启6379节点,可以看到6379节点成为了6380节点的从节点。 Step5:在妨碍转移阶段,哨兵和主从节点的设置文件城市被改写。 对付主从节点,首要是slaveof设置的变革:新的主节点没有了slaveof设置,其从节点则slaveof新的主节点。 对付哨兵节点,除了主从节点信息的变革,纪元(epoch)也会变革,下图中可以看到纪元相干的参数都+1了。 4.总结 哨兵体系的搭建进程,有几点必要留意:
三、客户端会见哨兵体系 上一末节演示了哨兵的两大浸染:监控和自动妨碍转移,本末节则团结客户端演示哨兵的其它两个浸染:设置提供者和关照。 1.代码示例 在先容客户端的道理之前,先以Java客户端Jedis为例,演示一下行使要领:下面代码可以毗连我们方才搭建的哨兵体系,并举办各类读写操纵:
(注:代码中只演示怎样毗连哨兵,非常处理赏罚、资源封锁等未思量) 2.客户端道理 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |