chronos:数据中心的任务调度器(job scheduler)


 1、
Chronos来源

Chronos现在是一家初创公司 Mesosphere在维护,该公司的联合创始人是前Airbnb的工程师Florian Leibert(也曾在Twitter工作过)和Tobias Knaup。 ChronosAirbnb是用来替代cron,是一个跑在mesos上的分布式的,可靠的调度scheduler

Mesosphere公司相关信息大家可以到以下链接看看:

http://mesosphere.io/

2、Chronos架构

 
chronos:数据中心的任务调度器(job scheduler)
 

Chronos架在mesos上,负责定时任务触发,解决任务之间的重复调用,依赖关系。任务通过mesos提交给下面的Hive,Pig等框架执行,元数据存放在DB中。Chronos的可靠性依赖zookeeper解决。

3、chronos扩展性

      Chronos借助mesosmaster/slave架构,支持sh脚本,甚至通过异步的方式执行远端文件传输和脚本,可以通过扩展基本支持hadoop以及传统数据库,脚本等在本地和远端的执行调用。

   支持标准的ISO8601的调度,可定义作业执行完成后的触发器,支持任意长度的依赖链。

4、功能特性

· 基于WebUI

· 8601 Repeating Interval Notation

· Handles dependencies

· Job Stats (e.g. 50th, 75th, 95th and 99th percentile timing, failure/success)

· Fault Tolerance (Hot Master)

· Configurable Retries

· Multiple Workers (i.e. Mesos Slaves)

 

5、应用场景以及当前存在的问题:

(1)适合数据中心异构集群批任务(长周期,重复执行)统一调度和管理。

(2)可以通过Mesos承担统一管理资源,如果不需要mesos统一管理资源,mesos退化成通信框架。

(3)不适合对实时性要求高的任务(秒级),不适合单次执行触发的任务。

(4)Web UI还比较简陋,没有以图的方式显示任务的依赖关系。

(5)任务调度里面没有优先级。

(6)没有统计任务资源使用情况,调度信息反馈统计不足。

(7)没有调度自学习能力,不能自动调优调度效率。

 

6项目主页:

http://airbnb.github.io/chronos/#Describing%20the%20Dependency%20Graph

你可能感兴趣的:(hadoop,框架,mesos,Chronos,scheduer)