<返回更多

一文读懂keepalive的工作原理

2022-05-11    程序员柒叔
加入收藏

keepalive是基于vrrp协议实现接入层高可用组件,避免系统的单点故障。

工作原理

要想理解keepalive的原理,就需要理解vrrp协议的工作原理。

概念解释:

Vrrp(Virtual Router Redundancy Protocol),虚拟路由冗余协议,一种为了避免路由器单点故障的容错协议。

网络架构如下图:

一文读懂keepalive的工作原理

 

工作原理

主备切换

虚拟路由器中的Master可以切换(即VIP切换到备份路由器上),切换方式分为3种:

Master路由器退出该路由器组

Master路由器降低自身优先级

Backup超时未收到vrrp消息

常见问题

当 Router A 和 Router B 无法正常通信时, 可能存在2个Master路由器,即“脑裂”。

解决方案:

  1. 核查A和B之间的网络,关闭防火墙或者配置好ip,Router之间保证网络通畅
  2. 使用2条线路连接2个路由器,一条坏了时,另一条备用
  3. 主节点编写脚本测试网络情况;如果网络不通,则关闭keepalived进程;
  4. Master路由器宕机后,立即告警,人为介入处理。

扩展知识

VRRP协议栈

一文读懂keepalive的工作原理

vrrp协议栈


一文读懂keepalive的工作原理

 

上述标红的几个字段是关键字段,都会出现在 keepalive 的配置文件中。

虚拟MAC地址

组成方式是00-00-5E-00-01-{VRID},前三个字节00-00-5E是IANA组织分配的,接下来的两个字节00-01是为VRRP协议指定的,最后的VRID是虚拟路由器标识,取值范围[1,255]

VRID

虚拟路由器标识,在同一个VRRP组内的路由器必须有相同的VRID

其他

Keepalive内置了一个模块,可以通过配置文件操作内核,向ipvs添加规则,创建LVS。这又是另一个关键组件,就不在本节讨论了。

keepalived进程

keepalived启动时有3个进程:


写在最后

对于常用组件,我们不但需要知道如何用,更要知道它的底层原理,在遇到问题是可以事半功倍。希望通过本文可以让大家对keepalive有更深入的了解。

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>