HAMI Scheduler 节点在 5 分钟内被锁定的解决方法
当 HAMI 调度器提示“节点在 5 分钟内被锁定”时,通常是由于节点资源分配冲突或设备插件未正确释放资源导致的。这种情况会阻止新任务绑定到该节点。
示例
shell
E0416 08:18:04.044525 1 scheduler.go:313 "Failed to lock node" err="node worker-a800-1 has been locked within 5 minutes" node="worker-a800-1"
可能原因 资源分配冲突:多个 Pod 尝试同时使用同一节点的资源。 设备插件崩溃:HAMI-device-plugin 崩溃后未正确更新节点状态。 调度器延迟:调度器未及时释放节点锁。
解决方法
重启相关 Pod:
hami-device-plugin-6gb99
hami-scheduler-7c794476b6-jmz26
清理节点锁
手动清理节点上的锁定标记:
shell
kubectl annotate node node1 hami.io/mutex.lock-
未测试
调整调度策略
修改调度器配置以避免频繁锁定:
shell
apiVersion: v1
kind: ConfigMap
metadata:
name: hami-scheduler-config
data:
lockTimeout: "300s" # 调整锁定超时时间
检查日志和资源状态
查看调度器和设备插件日志,确认问题根源:
shell
kubectl logs -n nvidia-vgpu <scheduler-pod-name>
kubectl describe node <node-name>
通过以上步骤,可以有效解决 HAMI 调度器中节点被锁定的问题,并确保资源分配的稳定性。