任务运行过程中,重启device-plugin后的一段时间内,若发生NPU故障,会概率性的导致NPU故障重调度不执行。
重启device-plugin的过程中,会导致该node所拥有的NPU数量降到0;从而导致该node在Volcano上被设置为notReady状态(直到下一个改变node状态的事件发生才会被设置为ready)。该节点的故障信息因此不会传递给ascend-volcano-plugin插件,从而导致该插件无法探查到NPU芯片的故障,导致NPU故障重调度不会被执行。
由于该问题为volcano v1.4.0版本问题(开源社区版),因此只能通过删除Volcano的Pod方式解决。
删除Volcano的Pod的命令如下(其中volcano-scheduler的Pod的名称需要根据实际情况填写):
kubectl delete pod -n volcano-system volcano-scheduler-xxxxxxxxx