在Apache Mesos群集中, Marathon (适用于长时间运行的任务)和 Chronos (适用于计划任务)可以用来安排工作 为什么我们需要两个不同的调度程序 - 一个用于长时间运行的任务,另一个用于计划任务?
答案 0 :(得分:4)
我认为这有很好的记录:
概括:Marathon用于长期运行的任务(即服务),而Chronos用于计划任务(即cron
- 类似工作)。
答案 1 :(得分:2)
我想我找到了我想要的答案:
Marathon 用于长时间运行(因此名称为“Marathon”)任务:
'long running tasks'
开始但永不结束
Mesos将确保它启动的应用程序将继续运行,即使它们运行的从属节点出现故障
长时间运行服务的示例:Web服务器
Chronos 用于计划任务:
例如:ETL工作
Scheduled tasks
已定义开始时间和结束时间
我可能不希望失败的计划任务一次又一次地重启
在chronos中,我们可以在完成以前的工作后添加依赖的工作,
建立任意DAG(有向无环图)的工作,大多数ETL工作就是这种情况。
参考文献:
https://aster.is/blog/2015/10/07/whats-a-long-running-task/
How to run a one-off task with Apache Mesos/Marathon?
https://groups.google.com/forum/#!topic/marathon-framework/DPQfTN_3ssY
Mesos Framework