-
Notifications
You must be signed in to change notification settings - Fork 103
调度代理任务
wangqi edited this page Jul 12, 2022
·
3 revisions
scaleph 对于调度和编排同样存在着很多的使用场景。
对于由计算引擎执行的离线任务,往往存在上下游依赖关系,只有当前置任务完成后才会触发下游任务执行。
将具有上下游依赖关系的任务转化为有向无环图(DAG)中的一个个节点,可视化地展示任务上下游节点、完成进度即是 DAG 调度。
大数据 DAG 调度开源产品有如下:
以云原生为特点的工作流引擎:
秒级定时调度需求主要来自 flink 集群和任务监控。
当创建 flink 集群或提交任务后需要通过秒级定时任务轮询 flink 集群,更新集群和任务状态
对于部分场景,需要任务 pipeline 支持。
flink 以 Native Kubernetes 方式运行时,有 2 种方式:Session 和 Application。今年 flink 官方也推出 flink-kubernetes-operator,通过 flink-kubernetes-operator 原生地创建 Session 集群和提交 Application 任务。
kubernetes 上以 application 模式运行 flink 任务,需要制作对应的任务镜像。发布 application 模式的任务流程如下:
- 下载、拉取制作镜像的文件
- 制作镜像
- 发布镜像到镜像注册中心
- 提交 application 模式 flink 任务到 kubernetes 中
- 容错处理
scaleph 内嵌调度系统会显得过于笨重,需要提供一层调度代理接口,与第三方调度系统进行对接:
- scaleph 服务端通过调度代理进行任务的创建,运行,暂停,删除等操作
- scaleph 服务端实现任务的执行逻辑,并通过调度代理进行封装,以便方便第三方调度系统运行。
Welcome to Scaleph wiki!