开发者
资源

多颗NPU芯片故障后,导致MindCluster Volcano重启,重调度任务不触发

问题现象描述

多颗芯片同时故障,可能导致MindCluster Volcano调度模块崩溃、重启,出现以下两种场景:
  • 故障重调度可能不执行。可参考解决措施进行处理。
  • 可能会出现状态为UnexpectedAdmissionError的Pod记录,但是不影响任务最终以一个新Pod被拉起,此时任务是正常运行,无须进一步处理。

原因分析

NPU芯片故障后,K8s将故障的NPU芯片移除。当MindCluster Volcano归还Pod占用的NPU芯片资源时,发现当前NPU芯片和K8s上NPU芯片数量不一致,从而引发panic

解决措施

可选择以下两种方式来解决该问题。

  • 由于该问题为MindCluster Volcano v1.4.0版本问题(开源社区版),可以通过删除MindCluster VolcanoPod方式解决。删除MindCluster VolcanoPod命令如下(其中volcano-scheduler的Pod的名称需要根据实际情况填写):
    kubectl delete pod -n volcano-system   volcano-scheduler-xxxxxxxxx
  • 如果使用的K8s是1.17及以上版本,可通过部署v1.7.0版本的MindCluster Volcano来解决该问题。