以下试验以及说明是经过试验确定了的,准确!!另外,如果想知道每个参数的真正含义,建议看官网
解决的问题:
1,当一个节点挂了,2个VIP都浮动到一个节点上
2,当这个节点好了,由于业务有一定的延时,所以还不想浮动IP立马漂移回来
3,如果一个节点的业务完蛋了,需要自己主动交出VIP
4,等自己节点的业务又好了,那么不能立马夺权,而是有一个过渡再夺权
preempt_delay 300 #表示的含义是,我当前是backup身份,但是我发现对方的master不如我,即优先级比我低,那么我不会立马去抢占,而是等五分钟后再去抢占
我是backup身份,但因为我的级别高,所以是实际的掌权者即master,当我发现我的业务已经挂了那么我就降低我的级别,让真正的master去掌权
直到我的级别又上来了,但是我也不会立马夺权,而是等一会再夺权
节点1:
vrrp_instance VI_2 {
state BACKUP
interface eno2 ###表示发vrrp包的接口,可以选择一对专用接口做心跳线,这里千万注意,网上那些直接抄别人的博客说这个就是绑定vip的接口,真不要脸,简直误人子弟
unicast_src_ip 192.168.1.31 ###从eno2上发的包,如果想要给他搞一个假的ip就用他
unicast_peer {
192.168.1.246
}
virtual_ipaddress {
192.168.1.177/24 brd 192.168.1.255 dev eno1 label eno1:1 ##vip真正绑定再哪个接口上是在这里配置的,当然如果你不指定,可不就绑定到interface那里配置的那个接口了
}
virtual_router_id 2
priority 110 ##高优先级,实际我是master
track_script
{
chkBackup #如果我发现自己挂了,则立马降低自己的优先级,master会立刻夺权
}
preempt_delay 300 ##发现优先级比我高的master,不会立马夺权,而是5分钟后再夺权
}
节点2:
vrrp_instance VI_2 {
state MASTER
interface eno2
unicast_src_ip 182.168.1.30
unicast_peer {
182.168.1.245
}
virtual_router_id 2
priority 100
# track_script
# {
# chkMaster #expect:120 unormal:100
# }
advert_int 1
authentication {
auth_type PASS
auth_pass 22222
}
virtual_ipaddress {
192.168.1.33/24 brd 192.168.1.255 dev eno1 label eno1:0
}
}