组件篇--Dolphin Shceduler
2023-02-08 20:32:35 0 举报
组件篇--Dolphin Shceduler
作者其他创作
大纲/内容
中心化
作用分布式去中心设计理念主要负责 DAG 任务切分、任务提交监控通过监听Zookeeper临时节点变化来进行容错处理。(监听其它MasterServer和WorkerServer)MasterServer基于netty提供监听服务。
MasterServer1
WorkerServer
RestAPI接口调用
Dolphin Shceduler海豚调度器
command Scanner
作用MasterServer和WorkerServer节点都通过ZooKeeper来进行集群管理和容错。
作用提供告警相关接口
Dolphin Shceduler的架构和流程
Distributed Quartz
API
作用负责处理前端UI层的请求:包括工作流的创建、定义、查询、修改、发布、下线、手工启动、停止、暂停、恢复、从该节点开始执行(失败后,从失败结点开始执行) 等….
TaskExecuteProcessor
UI
服务注册、监听、心跳、容错、分布式锁
有Master和work之分Master:主要负责任务分发并监督Slave的健康状态,动态的将任务均衡到Slave上。 (负责任务的执行工作并维护和Master的心跳)
Scheduler
ack response
DB
定义
中心化和去中心化
WorkerServer1
定时调度,顺序执行,DAG一个分布式易扩展的可视化 DAG工作流任务调度开源系统。解决数据研发ETL 错综复杂的依赖关系,不能直观监控任务健康状态等问题。
Alert
运行流程
作用主要负责任务的执行和提供日志服务。向Zookeeper注册临时节点,并维持心跳Server基于netty提供监听服务。
MasterServer
作用系统的前端页面,提供系统的各种可视化操作界面。
TaskExecuteThread
ZooKeeper
去中心化
服务注册、监听、心跳
组件Distributed Quartz : 负责定时任务的启停操作MasterSchedulerThread:是一个扫描线程,定时扫描数据库中的 command 表MasterExecThread:负责DAG任务切分、任务提交监控MasterTaskExecThread:负责任务的持久化
特点
command调用
组件FetchTaskThread: 从Task Queue中领取任务,并根据不同任务类型 调用对应执行器LoggerServer:日志分片查看、刷新和下载等功能
dispatcher
ZKCluster
Dolphin Shceduler和一些概念
告警
0 条评论
下一页