将 Marathon 配置为不重新启动进入 TASK_FINISHED 的任务

Configure Marathon to not restart tasks that enter TASK_FINISHED

我通过 Marathon 启动任务。无论它们如何完成,Marathon 都会重新启动它们。我希望他们只有在失败时才重新启动。有没有办法在任务进入 TaskStatus.TASK_FINISHED 状态时 Marathon 不会重新启动它,例如,通过暂停作业,即将任务数设置为零?

当前,当我的任务成功完成时,我向 Marathon REST 发送了一条消息 API 将作业缩减为 0 个实例。这很好,除了作为响应,Marathon 终止了将其状态设置为 TASK_KILLED 的任务,我希望它是 TASK_FINISHED 以指示其成功。

如果您有您描述的任务之一,我认为更好的解决方案是使用像

这样的调度程序

Marathon 通常用于保留任务 运行,并在它们达到最终任务状态时重新安排它们。

参见Marathon docs, and also this explanation of different task types