0
点赞
收藏
分享

微信扫一扫

来说说 VRRP 协议?

闲云困兽 2022-02-14 阅读 99



keepalived 是一个基于 VRRP 协议来实现的服务高可用方案,从而可以避免 IP 单点故障。

一般与其他负载均衡技术,如 LVS,Nginx 等一起来工作来达到集群高可用的目的 

今天阿粉来说说 VRRP 协议

VRRP 简介(转发机制)


  1. VRRP(Virtual Router Redundancy Protocol,虚拟路由器冗余协议)将可以承担网关功能的路由器加入到备份组中,形成一台虚拟路由器,由 VRRP 的选举机制决定哪台路由器承担转发任务,局域网内的主机只需将虚拟路由器配置为缺省网关
  2. VRRP 是一种选择协议,它可以把一个虚拟路由器的责任动态分配到局域网上的 VRRP 路由器中的一台。控制虚拟路由器 IP 地址的 VRRP 路由器称为主路由器,它负责转发数据包到这些虚拟 IP 地址。一旦主路由器不可用,这种选择过程就提供了动态的故障转移机制,这就允许虚拟路由器的 IP 地址可以作为终端主机的默认第一跳路由器 3.VRRP是一种容错协议,在提高可靠性的同时,简化了主机的配置。在具有多播或广播能力的局域网(如以太网)中,借助 VRRP 能在某台设备出现故障时仍然提供高可靠的缺省链路,有效避免单一链路发生故障后网络中断的问题,而无需修改动态路由协议、路由发现协议等配置信息
  3. VRRP 协议的实现有 VRRPv2 和 VRRPv3 两个版本, VRRPv2 基于 IPv4 , VRRPv3 基于 IPv6
  4. VRRP 路由器:所有运行 VRRP 协议的路由器就叫做 VRRP 路由器
  5. VRRP 备份组:多台路由器被分到一个组中,在这个组中选举出一台主路由器,其他作为备份路由器。平常时候都是主路由器一个工作,备份路由器空闲,当主路由器故障后,从多台备份路由器中选举出一台替代故障的主路由器工作。这一组中的路由器构成了一个备份组。
  6. 虚拟路由器:虚拟路由器是 VRRP 备份组中所有路由器的集合,它是一个逻辑概念,并不是正真存在的。从备份组外面看备份组中的路由器,感觉组中的所有路由器就像一个一样,你可以理解为在一个组中:主路由器 + 所有备份路由器=虚拟路由器。虚拟路由器有一个虚拟的 IP 地址和 MAC 地址。如果虚拟 IP 和备份组中的某台路由器的 IP 相同的话,那么这台路由器称为 IP 地址拥有者,并且作为备份组中的主路由器

VRRP 状态

VRRP 路由器在运行过程中有三种状态:


  • Initialize 状态:系统启动后就进入 Initialize ,此状态下路由器不对 VRRP 报文做任何处处理,可以理解为初始化
  • Master 状态:路由器会发送 VRRP 通告,发送免费 ARP 报文。
  • Backup状态:接受 VRRP 通告。

一般主路由器处于 Master 状态,备份路由器处于 Backup 状态。

VRRP工作过程如下:


  1. 路由器使用 VRRP 功能后,会根据优先级确定自己在备份组中的角色。优先级高的路由器成为 Master 路由器,优先级低的成为 Backup 路由器。Master 路由器定期发送 VRRP 通告报文,通知备份组内的其他设备自己工作正常;Backup 路由器则启动定时器等待通告报文的到来。
  2. 在抢占方式下,当 Backup 路由器收到 VRRP 通告报文后,会将自己的优先级与通告报 文中的优先级进行比较。如果大于通告报文中的优先级,则成为 Master 路由器;否则将保持 Backup 状态
  3. 在非抢占方式下,只要 Master 路由器没有出现故障,备份组中的路由器始终保持 Master 或 Backup 状态,Backup 路由器即使随后被配置了更高的优先级也不会成为 Master 路由器
  4. 如果 Backup 路由器的定时器超时后仍未收到 Master 路由器发送来的 VRRP 通告报文,则认为 Master 路由器已经无法正常工作,此时 Backup 路由器会认为自己是 Master 路由器,并对外发送 VRRP 通告报文。备份组内的路由器根据优先级选举出 Master 路由器,承担报文的转发功能

在项目中的体现

来说说 VRRP 协议?_服务器

如图,我们能够看到前端在请求后端时,我们并不是让它直接将请求打到实际的服务器上面来,而是去请求虚拟 IP ,此时如果 master 服务器没有出现故障的话,就会由它将前端的请求打到真实的服务器上面去

如果 master 不能工作的话,就会由 backup 服务器将前端请求打到真实的服务器上面(阿粉在图中拿虚线来表示当 master 宕掉时,由 backup 来负责转发请求),这样就实现了服务高可用

以上,感谢你的阅读哇~


最后说两句(求关注)

最近大家应该发现微信公众号信息流改版了吧,再也不是按照时间顺序展示了。这就对阿粉这样的坚持的原创小号主,可以说非常打击,阅读量直线下降,正反馈持续减弱。

所以看完文章,哥哥姐姐们给阿粉来个,让阿粉拥有更加大的动力,写出更好的文章,拒绝白嫖,来点正反馈呗~。

如果想在第一时间收到阿粉的文章,不被公号的信息流影响,那么可以给Java极客技术设为一个。

最后感谢各位的阅读,才疏学浅,难免存在纰漏,如果你发现错误的地方,留言告诉阿粉,阿粉这么宠你们,肯定会改的~

最后谢谢大家支持~

最最后,重要的事再说一篇~

快来关注我呀~

快来关注我呀~

快来关注我呀~

来说说 VRRP 协议?_优先级_02

举报

相关推荐

0 条评论