系统管理指南:IP 服务

基于探测器的故障检测

in.mpathd 守护进程会对 IPMP 组中具有测试地址的每个接口执行基于探测器的故障检测。基于探测器的故障检测涉及使用测试地址发送和接收 ICMP 探测器消息。这些消息通过接口发送到同一 IP 链路上的一个或多个目标系统。有关测试地址的介绍,请参阅测试地址。有关配置测试地址的信息,请参阅如何配置具有多个接口的 IPMP 组

in.mpathd 守护进程确定要动态探测的目标系统。会自动将连接到 IP 链路的路由器选为探测目标。如果在链路上不存在路由器,则 in.mpathd 会将探测器发送到链路上的相邻主机。发送到所有主机多点传送地址(在 IPv4 中为 224.0.0.1,在 IPv6 中为 ff02::1)的多点传送包可确定要用作目标系统的主机。对回显包作出响应的前几个主机将被选作探测目标。如果 in.mpathd 找不到响应 ICMP 回显包的路由器或主机,则 in.mpathd 无法检测基于探测器的故障。

可以使用主机路由显式配置要由 in.mpathd 使用的目标系统的列表。有关说明,请参阅配置目标系统

为确保 IPMP 组中的每个接口都正常工作,in.mpathd 将通过 IPMP 组中的所有接口分别探测所有目标。如果对五个连续的探测器未做出任何响应,则 in.mpathd 认为接口已出现故障。探测速率取决于故障检测时间 (failure detection time, FDT)。故障检测时间的缺省值是 10 秒。不过,可以在 /etc/default/mpathd 文件中调整故障检测时间。有关说明,请转至如何配置 /etc/default/mpathd 文件

对于 10 秒的修复检测时间,探测速率约为每两秒发送一个探测器。最短的修复检测时间是故障检测时间的两倍,缺省情况下为 20 秒,因为必须收到对 10 个连续探测器的回复。故障检测时间和修复检测时间仅适用于基于探测器的故障检测。


注 –

由 VLAN 组成的 IPMP 组,基于链路的故障检测通过物理链路实现,因此影响该链路上的所有 VLAN。基于探测器的故障检测通过 VLAN 链路执行。例如,同时在一个组内配置bge0/bge1bge1000/bge1001。如果已拔出 bge0 的电缆,那么基于链路的故障检测将立即报告 bge0bge1000 都好像已发生故障。但是,如果 bge0 上的所有探测器目标变得不可访问,将仅报告 bge0 发生故障,因为 bge1000 在其自己的 VLAN 上有其自己的探测器目标。