本次分享来源2021年9月4日杨佳豪同学,给大家带来的分享是基于 Apache DolphinScheduler 使用规范与使用技巧分享,分享的内容主要为以下五点:
“
DolphinScheduler基本部署情况
DolphinScheduler使用规范
DolphinScheduler工作流维护
DolphinScheduler调度依赖划分
DolphinScheduler运维维护
1 基本部署情况
DolphinScheduler 部署情况:
目前采用1.3.3版本,于2020.11月开始使用
整套平台基础CDH 6.3.2 离线hive 进行调度,目前有三套独立调度平台环境 ,dev和test 共用在一起,uat ,prd,分别单独部署
dev 、 test 环境:
部署在一台 16C/64G 的服务器上
uat 环境:
部署在三台 32C / 64G 的服务器 ,部署了两台master 和 三台 worker

prd 环境
部署在 五台 32C / 64 G 的服务器,分开部署了两台master 和 三台worker

每天调度大概近1000+任务,主要用到的组件 【shell】、【sub_process】、【depend节点】,
目前使用稳定。
我们目前实现一套脚本,多环境调度。仅需细小参数更改,即可用于测试开发生产分别使用,
以及数据生命周期的管理。
2 DolphinScheduler 使用规范
DolphinScheduler 项目开发使用规范
租户管理:
目前多套环境都只创建了一个租户,所有服务器一个队列,开发人员无需过多选择,直接使用即可。

用户管理:
所有开发和测试的同学都由管理人员创建账户,用于统一管理。

告警组管理:
开发人员都被添加到告警组中,排班对任务报错进行排查处理

项目管理:
目前我们这采用不同迭代的方式和项目迭代项目保持一致,整体项目数据库,由dba进行定期备份。

DolphinScheduler 人员权限管理规范
开发同学:
开发的同学会授予自己负责的项目,只负责开发环境和测试的工作流配置,不接触uat和prd

测试同学:
测试的同学只授权test项目,用于测试工作流的相应报表,其他项目不予开放权限。

DolphinScheduler 上线流程使用规范
上线流程:
按照流程,负责维护的ds运维同学,对项目版本跟随git代码版本进行备份和新上线

3 DolphinScheduler 工作流维护
DolphinScheduler 工作流分类
主题分类:
ods 层 辖区主题,它们主要在一个相应的表,进行分类

DolphinScheduler 工作流节点配置
配置规范:
节点名称必须和脚本所调度文件名称保证一致
必须配置失败重试次数和间隔时间,默认3次,5分钟
描述信息开发环境必须描述清晰
脚本下线只采用禁止执行,不进行删除操作
全量表必须设置生命周期时间

配置规范:
开发同学在更改自己负责的工作流是需要添加具体描述。

DolphinScheduler 工作流节点扩展
离线sqoop 任务:

hive 任务:

全局参数:

4 DolphinScheduler 调度依赖的划分
DolphinScheduler 调度划分
项目调度:

DolphinScheduler 周期调度
周期任务:

DolphinScheduler 任务容错
任务失败容错机制:

5 DolphinScheduler 运维维护
DolphinScheduler 服务报警
对所在主机和服务进行监控:

DolphinScheduler 工作流质量监控
相关监控:

下面视频是分享演讲:
本次分享介绍了Apache DolphinScheduler在实际环境中的部署、使用规范和运维经验。部署方面,涉及1.3.3版本在dev、test、uat、prd环境的配置,包括服务器资源分配。使用规范涵盖租户、用户、告警组管理和权限控制,以及上线流程。工作流维护方面,强调了工作流分类、节点配置和生命周期管理。调度依赖方面,讨论了项目调度、周期任务和任务容错机制。运维维护部分提到了服务报警和质量监控。分享还涵盖了监控和脚本管理策略。
1万+

被折叠的 条评论
为什么被折叠?



