要恢复Kubernetes无状态任务,您可以按照以下步骤操作:
- 确认任务队列功能:确保您的集群已启用任务队列(ack-kube-queue),该功能支持任务的优先级调度和恢复。
- 检查任务状态:在集群中查找被删除的无状态任务,确认其是否进入了Unschedulable队列等待重新调度。这通常发生在任务因资源不足或其他原因未能成功启动时。
- 开启严格优先级调度(如果尚未开启):
- 登录容器服务管理控制台。
- 在左侧导航栏选择集群。
- 选择目标集群,进入工作负载 > 无状态。
- 选择命名空间为kube-queue,找到kube-queue-controller,点击操作列的编辑。
- 在环境变量中新增记录:配置项为
StrictConsistency
,取值为true
,类型为自定义变量引用。 - 点击更新以保存更改。
4.. 触发任务恢复: - 一旦严格优先级调度开启,高优先级任务在集群资源释放时将优先得到调度。观察Unschedulable队列中的任务,确认被删除的无状态任务是否按预期恢复并开始执行。 请注意,恢复过程依赖于集群资源状况、任务优先级设置以及ack-kube-queue的正常运行。如果被删除的任务未自动恢复或无法找到,请检查任务配置、集群资源状态及ack-kube-queue的日志以排查问题。 以上步骤基于阿里云平台提供的功能和服务。如果您使用的是非阿里云Kubernetes集群或未启用ack-kube-queue,恢复方法可能有所不同。在这种情况下,请参考您所用Kubernetes平台或任务编排系统的相关文档以获取适当的恢复指导。