ai-infra-interview-305

第 221 题:故障检测和自动恢复机制?heartbeatwatchdog

题目

故障检测和自动恢复机制?heartbeatwatchdog


完整讲解

一、故障检测

Heartbeat:训练进程或 agent 定期向 scheduler/controller 上报「存活」;超时未报则判为故障(进程挂、节点宕、网络分区)。Watchdog:节点或容器内 看门狗 监控 主进程;主进程卡死或退出时 watchdog 触发(如重启容器、上报失败)。多级进程级(worker 向 master 心跳)、节点级(kubelet、Slurm 的 slurmd)、集群级(scheduler 与 API 健康);任一级发现异常即可触发恢复或告警。

二、自动恢复

策略:(1)重启:单进程/单 Pod 失败则 restartPolicy 或 controller 重建;(2)从 checkpoint 恢复:训练任务加载最新 checkpoint 后继续,由平台或启动脚本指定 checkpoint 路径;(3)弹性:Ray、PyTorch elastic 等可 替换故障节点、重新组通信继续跑;(4)重提:无法原地恢复时,自动重新提交 同配置 job(带 checkpoint),由调度器重新分配资源。

三、与调度的配合

Gang 作业:任一 worker 失败需全组感知(通过 controller 或 NCCL abort);统一退出 后由平台做「从 checkpoint 重提」或「替换节点后重启」。存储:checkpoint 存共享存储,任意新节点可读;元数据(step、world_size)一致才能正确 resume。

面试要点


记忆要点

  1. 检测:heartbeat、watchdog;多级(进程/节点/集群)。
  2. 恢复:重启、checkpoint resume、弹性、重提。
  3. Gang + checkpoint 共享存储。
返回模块 返回总览