【发布时间】:2021-02-09 18:30:19
【问题描述】:
我在本地使用 Mesos 1.3.1 和 Chronos。我目前每 30 分钟安排 100 个作业进行测试。
有时任务会永远卡在 RUNNING 状态,直到我重新启动任务卡住的 Mesos 代理。在此期间没有重新启动代理。
我尝试 KILL 任务,但它的状态从未更新为 KILLED,而 Chronos 中的日志显示成功接收到请求。我已经在 Chronos 中检查它确实将任务更新为成功并且结束时间也正确,但持续时间正在进行并且任务仍处于 RUNNING 状态。
对于被卡住的任务,执行器容器也会永远运行。我有一个执行器容器,它将休眠 20 秒,并将 offer_timeout 设置为 30 秒,将 executor_registration_timeout 设置为 2 分钟。
我还每 10 分钟包含一次 Mesos 协调,但它每次都会将任务更新为 RUNNING。
我还尝试在协调之前强制任务状态再次更新为已完成,但仍未更新为已完成。 似乎 Mesos 领导者没有为卡住的任务获取正确的状态。
我尝试使用不同的任务资源分配(cpu:0.5,0.75,1...)运行,但没有解决问题。我将作业数量更改为每 30 分钟 70 个,但仍在发生。这个问题每天出现一次,非常随机,任何工作都可能发生。
如何在不重新启动 Mesos 代理的情况下从活动任务中移除这个卡住的任务? 有没有办法防止这个问题发生?
【问题讨论】:
-
你能分享一些日志吗?
标签: mesos mesosphere mesos-chronos