本次分享来源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. 4 亿用户,7W+ 作业调度难题,Bigo 基于 Apache DolphinScheduler 巧化解

    点击上方 蓝字关注我们 ✎ 编 者 按 成立于 2014 年的 Bigo,成立以来就聚焦于在全球范围内提供音视频服务.面对 4 亿多用户,Bigo 大数据团队打造的计算平台基于 Apache Dolp ...

  2. 就在明天,Apache DolphinScheduler Meetup 2021 如约而至!

    点击上方 蓝字关注我们 社区的小伙伴们,Apache DolphinScheduler Meetup 2021 如约而至,就在明天,等你来玩! 在此次 Meetup 线上直播中,不仅将有来自 Bigo ...

  3. 重构、插件化、性能提升 20 倍,Apache DolphinScheduler 2.0 alpha 发布亮点太多!

    点击上方 蓝字关注我们 社区的小伙伴们,好消息!经过 100 多位社区贡献者近 10 个月的共同努力,我们很高兴地宣布 Apache DolphinScheduler 2.0 alpha 发布.这是 ...

  4. 议题征集令 | Apache DolphinScheduler Meetup 2021 来啦,议题征集正式开启!

    点击上方 蓝字关注我们 社区的小伙伴们,经过精心筹备,我们很高兴地宣布,Apache DolphinScheduler Meetup 2021 将于 2021 年 11 月 27 日到来! 在 Mee ...

  5. Apache DolphinScheduler 1.3.9 发布,新增 StandaloneServer

    点击上方 蓝字关注我们 2021 年 10 月 22 日,Apache DolphinScheduler 正式发布 1.3.9 版本.时隔一个半月,在社区贡献者的共同努力下,Apache Dolphi ...

  6. 手把手教你 Apache DolphinScheduler 本地开发环境搭建 | 中英文视频教程

    点击上方 蓝字关注我们 最近,一些小伙伴反馈对小海豚的本地开发环境搭建过程不太了解,这不就有活跃的贡献者送来新鲜的视频教程!在此感谢@Tianqi-Dotes 的细致讲解 贡献者还贴心地录制了中英文两 ...

  7. Apache DolphinScheduler 架构演进介绍及开源经验分享 - eBay 阮文俊

    引言 来自 eBay 的文俊同学在近期的上海开源大数据 Meetup 上做了十分精彩的 "Apache DolphinScheduler 的架构演进" 分享.本次分享有近 200 ...

  8. 社区之光:我和 Apache DolphinScheduler 的这一年

    背景 没错,本文的主人翁就是那个在多个 DolphinScheduler 用户群超级活跃,"孜孜不倦" 地给用户各种答疑的小伙,如果你在群里问过问题,伯毅多半概率回答过,哈哈,今天 ...

  9. Apache DolphinScheduler 是如何诞生的

    作者 | 代立冬,李岗 排版 | 开源之道小助理 Apache DolphinScheduler,简称"DS", 中文名 "小海豚调度"(海豚聪明.人性化,又左 ...

随机推荐

  1. forms组件补充与ModelForm简单使用与cookie与session

    目录 forms组件钩子函数 forms组件字段参数 字段参数 validators详解 choices详解 widget详解 forms组件字段类型 ModelForm简单使用 cookie与ses ...

  2. Tarjan入门

    Tarjan系列!我愿称Tarjan为爆搜之王! 1.Tarjan求LCA 利用并查集在一遍DFS中可以完成所所有询问.是一种离线算法. 遍历到一个点时,我们先将并查集初始化,再遍历完一个子树之后,将 ...

  3. Python Selenium库

    Selenium库 自动化测试工具,支持多种游览器 爬虫中主要用来解决JavaScript渲染的问题 安装Selenium pip3 install selenium 安装游览器驱动 下载驱动地址:h ...

  4. C#语言中的类型转换方法(unfinished)

    一.C#中的数据类型 1.数值类型 2.字符类型 3.字符串类型 4.布尔类型 5.枚举类型 6.Object类型 二.常见的类型转换 从转换方式的角度,类型转换分为隐式转换与显式转换两种. 其中,隐 ...

  5. Java 线程创建与常用方法

    进程与线程 进程 程序由指令和数据组成,但这些指令要运行,数据要读写,就必须将指令加载至 CPU,数据加载至内存.在指令运行过程中还需要用到磁盘.网络等设备.进程就是用来加载指令.管理内存.管理 IO ...

  6. 看看CabloyJS工作流引擎是如何实现Activiti边界事件的

    CabloyJS内置工作流引擎的基本介绍 1. 由来 众所周知,NodeJS作为后端开发语言和运行环境,支持高并发.开发效率高,有口皆碑,但是大多用于数据CRUD管理.中间层聚合和中间层代理等工具场景 ...

  7. C语言学习之我见-strncpy()字符串复制函数(可控制范围)

    strncpy()函数,用于两个字符串值的复制. (1)函数原型 char *strncpy(char * _Dest,const char * _Source,size_t _Count); (2) ...

  8. JS:条件语句2

    1.for循环:循环代码块一定的次数 例: for(var i = 0;i<5;i++){ console.log(i); } // 0 1 2 3 4 遍历对象: var arr=[" ...

  9. JavaScript中动态生成表格

    动态生成表格,首先需要输入并获取动态的数字,html中结构代码如下:行:<input type="text" id="row" value="5 ...

  10. Python: list列表的11个内置方法

    先来逼逼两句: 在实际开发中,经常需要将一组(不只一个)数据存储起来,以便后边的代码使用.在VBA中有使用数组,可以把多个数据存储到一起,通过数组下标可以访问数组中的每个元素.Python 中没有数组 ...