DolphinScheduler
概述
Apache DolphinScheduler是一个分布式、易扩展的可视化 DAG 工作流任务调度平台。主要解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用
核心架构
- MasterServer : 分布式无中心设计理念,主要负责 : DAG 任务切分、任务提交、任务监控,并同时监听其它 MasterServer 和 WorkerServer 的健康状态
- WorkerServer : 采用分布式无中心设计理念,主要负责 : 任务的执行和提供日志服务
- ZooKeeper 服务 : 管理集群和容错 ( MasterServer , WorkerServer )
- Alert服务 : 提供告警相关服务
- API接口层 : 处理前端 UI 层的请求
- UI : 系统的前端页面,提供系统的各种可视化操作界面
部署概述
软硬件环境要求
系统要求 :
操作系统 | 版本 |
---|---|
Red Hat Enterprise Linux | 7.0 及以上 |
CentOS | 7.0 及以上 |
Oracle Enterprise Linux | 7.0 及以上 |
Ubuntu LTS | 7.0 及以上 |
硬件要求 :
CPU | 内存 | 网络 |
---|---|---|
4核+ | 8 GB+ | 千兆网卡 |
部署模式
DolphinScheduler 支持多种部署模式 :
- 单机模式(Standalone)
- 伪集群模式(Pseudo-Cluster)
- 集群模式(Cluster)
单机模式
单机模式(standalone)模式下,所有服务均集中于一个 StandaloneServer 进程中
其中内置了注册中心 Zookeeper 和数据库 H2
只需配置 JDK 环境,就可一键启动 DolphinScheduler
伪集群模式
伪集群模式(Pseudo-Cluster)是在单台机器部署 DolphinScheduler 各项服务
Zookeeper 和数据库需单独安装并进行相应配置
该模式下服务都只在同一台机器上 :
- master
- worker
- api server
- logger server
集群模式
集群模式(Cluster)与伪集群模式的区别 : 在多台机器部署 DolphinScheduler 各项服务,并且可以配置多个 Master 及多个 Worker
集群模式部署
DolphinScheduler 集群模式部署 : https://blog.csdn.net/qq_44226094/article/details/123581902
DolphinScheduler 入门
安全中心配置
安全中心 :
- 租户管理
- 用户管理
- 告警组管理
- Worker分组管理
- 队列管理
- 令牌管理
安全中心只有管理员账户才有操作权限
队列管理
队列对应的是 Yarn 调度器的资源队列 ( 只对跑在Yarn上的任务类型有效 ) . 此处创建出的队列,可供后续任务进行选择
在 DolphinScheduler 中创建队列,并不会影响到Yarn调度器的队列配置
租户管理
租户对应的是Linux系统用户,是Worker执行任务使用的用户。如果Worker所在节点没有这个用户,Worker会在执行任务时创建这个用户
- 租户编码:对应Worker执行任务所使用的用户名
- 租户名称:用于在DolphinScheduler中显示
- 队列:该租户提交Yarn任务时的默认队列
用户管理
用户对应的是DolphinScheduler的用户,用于登录DolphinScheduler。用户分管理员用户和普通用户。默认情况下,管理员只有授权和用户管理等权限,而普通用户只有创建项目,定义工作流、执行工作流等权限
- 用户名:DolphinScheduler登录账户
- 租户:该用户关联的租户
- 队列:默认为租户所关联的队列
- 邮件、手机号:主要用于告警通知
告警组管理
告警组可包含多名用户,用于指定告警发送对象
创建告警组
增加用户
Worker分组管理
在任务执行时,可以将任务分配给指定Worker组,最终由该组中的Worker节点执行该任务。默认情况下,所有Worker均位于default组。
令牌管理
令牌用于通过接口访问DolphinScheduler各项服务时的用户验证。普通用户通过UI页面访问各项服务时,无需使用令牌。若需将DolphinScheduler与第三方服务进行集成,则需调用其接口,此时需使用令牌
项目管理
切换用户
默认不使用管理员用户操作项目和工作流等,故需先切换到普通用户 cpu
cpu 用户退出
使用 cpu 用户登录