https://www.jianshu.com/p/c55956882962
keepalived的抢占与非抢占模式
背景:俩节点haproxy通过keepalived实现高可用
说明:harpxy的实际运行过程中,当master发生异常,且后期恢复master正常后,存在抢占或非抢占两种情况。简单点说抢占模式就是,当master宕机后,backup 接管服务。
后续当master恢复后,vip漂移到master上,master重新接管服务,多了一次多余的vip切换,而在实际生产中是不需要这样。实际生产中是,当 原先的master恢复后,状态变为backup,不接管服务,这是非抢占模式。
接下来分4种情况说明
1)俩台都为master时,比如server1的优先级大于server2,keepalived启动后server1获得master,server2自动降级为backup。
此时server1宕机的话,server2接替 服务,当server1恢复后,server1又变为master,重新接管服务,server2变为backup。
属于抢占式。
2)server1为master,server2位backup,且master优先级大于backup。
keepalived启动后server1获得master,server2为backup。
当server1宕机后, server2接管服务。当server1恢复后,server1重新接管服务变为master,而server2变为backup。
属于抢占式
3)server1为master,server2位backup,且master优先级低于backup。
keepalived启动后server2获得master,server1为backup。
当server2宕机后, server1接管服务。此时server2恢复后抢占服务,获得master,server1降级将为backup。
属于抢占式
以上3种,只要级别高就会获取master,与state状态是无关的
4)server1和server2都为backup。
我们要注意启动server服务的启动顺序,先启动的升级为master,与优先级无关。。且配置nopreempt
项
比如server1获得master权限,server2为backup。
此时server1宕机后,server2接管服务升级为master。
当server1恢复后权限降为backup,不会争抢 server2的master权限,server2将会继续master权限。
属于非抢占式
重点:第4种非抢占式俩节点state必须为bakcup,且必须配置nopreempt
注意:这样配置后,我们要注意启动服务的顺序,优先启动的获取master权限,与优先级没有关系了
总结:
抢占模式即MASTER从故障中恢复后,会将VIP从BACKUP节点中抢占过来。
非抢占模式即MASTER恢复后不抢占BACKUP升级为MASTER后的VIP
作者:PENG先森_晓宇
链接:https://www.jianshu.com/p/c55956882962
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
主从都加 nopreempt :非抢占VIP模式
global_defs { router_id LVS_MASTER } vrrp_instance VI_A { state BACKUP interface bond3 virtual_router_id 99 nopreempt # 不抢占模式 priority 61 advert_int 1 authentication { auth_type PASS auth_pass XXXXXXXXXXXXX } virtual_ipaddress { 192.xxx.xxx.1 } } global_defs { router_id LVS_SLAVE } vrrp_instance VI_A { state BACKUP interface bond3 virtual_router_id 99 nopreempt # 不抢占模式 priority 61 # advert_int 1 authentication { auth_type PASS auth_pass xxxxxxx } virtual_ipaddress { 192.xxx.xxx.1 } }
https://blog.csdn.net/nimasike/article/details/52463806?utm_medium=distribute.pc_feed_404.none-task-blog-2~default~BlogCommendFromBaidu~default-3.control404&depth_1-utm_source=distribute.pc_feed_404.none-task-blog-2~default~BlogCommendFromBaidu~default-3.control40