关于 Apache DolphinScheduler

Apache DolphinScheduler(incubator) 于 17 年在易观数科立项, 19 年 8 月进入 Apache 孵化器,已有 400+ 公司在生产上使用,代码+文档贡献者近 200 位。DolphinScheduler (简称DS)致力于使大数据任务调度开箱即用,它以拖拉拽的可视化方式将各种任务间的关系组装成 DAG(有向无环图),并实时监控整个数据pipeline的运行状态,同时支持失败重试、重跑、恢复失败、补数等大数据常用操作
GitHub 地址:http://github.com/apache/

DS 解决的问题

升级步骤

1、下载 1.3.4 安装包

wget https://mirror.bit.edu.cn/apache/incubator/dolphinscheduler/1.3.4/apache-dolphinscheduler-incubating-1.3.4-dolphinscheduler-bin.tar.gz

2、停止 dolphinscheduler( 简称 ds) 所有服务

sh ./bin/stop-all.sh

3、备份数据库和 ds 部署目录

3.1 备份 ds 软件目录(我是用 dolphinscheduler 这个用户部署 ds 1.2.1 到 /usr/local/ 下了)

mv /usr/local/dolphinscheduler  /usr/local/dolphinscheduler-1.2.1
mkdir dolphinscheduler
chown dolphinscheduler:dolphinscheduler dolphinscheduler
# 保险起见也备份一下 用于保存上传资源文件(shell脚本、jar等)的目录
cp /data01/dsdata/dolphinscheduler /data01/dsdata/dolphilnscheduler-1.2.1

3.2 备份数据库

mysqldump --login-path=xx_adm3306 -B dolphinscheduler > /data/dixxxo_bak.dmp

4、解压&安装

tar -zxvf apache-dolphinscheduler-incubating-1.3.4-dolphinscheduler-bin.tar.gz -C /opt/dolphinscheduler/

mv apache-dolphinscheduler-incubating-1.3.4-dolphinscheduler-bin  dolphinscheduler-1.3.4-bin
  • 升级数据库

修改 conf/datasource.properties

#mysql

spring.datasource.driver-class-name=com.mysql.jdbc.Driver

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/dolphinscheduler?characterEncoding=UTF-8

spring.datasource.username=dolphinscheduler

spring.datasource.password=iixxx

拷贝数据库驱动包至 lib 目录 下

cp /usr/local/dolphinscheduler/lib/mysql-connector-java-8.0.18.jar   ./lib/

执行数据库升级脚本

sh ./script/upgrade-dolphinscheduler.sh

  • 升级软件

修改 env/dolphinscheduler_env.sh (具体请以自己的hadoop、spark等各软件所在的路径为准)

export HADOOP_HOME=/opt/soft/hadoop

export HADOOP_CONF_DIR=/opt/soft/hadoop/etc/hadoop

export SPARK_HOME1=/opt/soft/spark1

export SPARK_HOME2=/opt/soft/spark2

export PYTHON_HOME=/usr/bin/python

export JAVA_HOME=/usr/local/java/jdk1.8.0_131

export HIVE_HOME=/opt/soft/hive

export FLINK_HOME=/opt/soft/flink

export DATAX_HOME=/usr/local/dataxnew/bin/datax.py

export PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH:$FLINK_HOME/bin:$DATAX_HOME:$PATH

修改 install.sh 配置内容(本案例是单机,多机也需修改下以下相关的配置即可)

vi config/install_config.conf

# postgresql or mysql

dbtype="mysql"

# db config

# db address and port

dbhost="127.0.0.1:3306"

# db username

username="dolphinscheduler"

# database name

dbname="dolphinscheduler"

# db passwprd

password="iiwxxxk"

# zk cluster

zkQuorum="ds1:2181"

installPath="/usr/local/dolphinscheduler"

# deployment user

deployUser="dolphinscheduler"

# alert config

# mail server host

mailServerHost="smtp.163.com"

# mail server port

mailServerPort="465"

# sender

mailSender="176xxxx668@163.com"

# user

mailUser="176xx6668"

# sender password

mailPassword="Dxx9870108"

# TLS mail protocol support

starttlsEnable="false"

# SSL mail protocol support

sslEnable="true"

#note: sslTrust is the same as mailServerHost

sslTrust="smtp.163.com"

# resource storage type:HDFS,S3,NONE

resourceStorageType="HDFS"

# if resourceStorageType is HDFS,defaultFS write namenode address

defaultFS="file:///data01/dsdata/dolphinscheduler"

# resource store on HDFS/S3 path,

resourceUploadPath="/data01/dsdata/dolphinscheduler/hdfs"

# who have permissions to create directory under HDFS/S3 root path

hdfsRootUser="dolphinscheduler"

# kerberos config

kerberosStartUp="false"

# api server port

apiServerPort="12345"

# install hosts

ips="ds1"

# ssh port, default 22

sshPort="60022"

# run master machine

masters="ds1"

# run worker machine

workers="ds1:default"

# run alert machine

alertServer="ds1"

# run api machine

apiServers="ds1"

以下文件可在执行安装脚本后执行,安装脚本会替换下面文件中的参数值,但是有些参数不会替换需要手动修改确认。

修改 common.properties

data.basedir.path=/data01/dsdata/dolphinscheduler

修改 zookeeper.properties

zookeeper.quorum=ds1:2181

zookeeper.dolphinscheduler.root=/dolphinscheduler

zookeeper.session.timeout=60000

zookeeper.connection.timeout=30000

zookeeper.retry.base.sleep=100

zookeeper.retry.max.sleep=30000

zookeeper.retry.maxtime=10

修改master.properties

master.max.cpuload.avg=100

master.reserved.memory=0.1

修改worker.properties

worker.max.cpuload.avg= 100

worker.reserved.memory=0.1

最后执行升级脚本

sh install.sh

升级后遇到的问题总结

1、管理控制台无法登陆

http://10.4.34.15:12345/dolphinscheduler/ui/#/home

清理浏览器缓存并登陆管理后台

2、任务分发失败提示没有分组(我1.2.1配置有datax worker group组)

添加分组 1.2.1 分组是通过界面控制,1.3.4 分组通过配置文件 worker.properties 在该配置文件中添加

worker.groups=default,datax

写在文末

因为 DS 在设计之初就确定了版本向后兼容的目标,整个升级过程来说还是不难,但生产环境无小事,建议在升级过程中能先测试演练的先演练一遍,练熟了在升级生产环境

Who's using DolphinScheduler

参与贡献

随着国内开源的崛起,DolphinScheduler迎来了蓬勃发展,为了做更好用的调度,真诚欢迎热爱开源的伙伴加入到开源社区中来,为中国开源崛起献上一份自己的力量,青春在开源上留下一点印记

参与 DolphinScheduler 社区有非常多的参与贡献的方式,包括:

贡献第一个PR(文档、代码) 我们也希望是简单的,第一个PR用于熟悉提交的流程和社区协作以及感受社区的友好度

社区汇总了以下适合新手的问题列表:https://github.com/apache/incubator-dolphinscheduler/issues/4124

如何参与贡献链接:https://dolphinscheduler.apache.org/zh-cn/docs/development/contribute.html

文档 github 地址:https://github.com/apache/incubator-dolphinscheduler-website

来吧,DolphinScheduler开源社区需要您的参与,为中国开源崛起添砖加瓦吧,哪怕只是小小的一块瓦,汇聚起来的力量也是巨大的

如果您想参与贡献,却发现上述方法都搞不明白,也没关系,我们有个开发者种子孵化群,可以添加微信(easyworkflow) 手把手教会您,添加时请说明想参与贡献哈

DolphinScheduler开源社区非常期待您的参与。

DolphinScheduler's Github Repo 传送门

↓↓↓

https://github.com/apache/incubator-dolphinscheduler

喜欢️ DolphinScheduler 的话,别忘了 Star 收藏一下哟~

Apache DolphinScheduler 如何从 1.2.1 升级到 1.3.4的更多相关文章

  1. 数据平台调度升级改造 | 从Azkaban 平滑过度到 Apache DolphinScheduler 的操作实践

    Fordeal的数据平台调度系统之前是基于Azkaban进行二次开发的,但是在用户层面.技术层面都存在一些痛点问题难以被解决.比如在用户层面缺少任务可视化编辑界面.补数等必要功能,导致用户上手难体验差 ...

  2. Apache DolphinScheduler 2.0.1 来了,备受期待的一键升级、插件化终于实现

    ✎ 编 者 按:好消息!Apache DolphinScheduler 2.0.1 版本正式发布! 本版本中,DolphinScheduler 经历了一场微内核+插件化的架构改进,70% 的代码被重构 ...

  3. Apache DolphinScheduler 3.0.0 正式版发布!

    ​  点亮 ️ Star · 照亮开源之路 GitHub:https://github.com/apache/dolphinscheduler   ​ 版本发布 2022/8/10 2022 年 8 ...

  4. 日均 6000+ 实例,TB 级数据流量,Apache DolphinScheduler 如何做联通医疗大数据平台的“顶梁柱”?

    作者 | 胡泽康 鄞乐炜 作者简介 胡泽康 联通(广东)产业互联网公司  大数据工程师,专注于开源大数据领域,从事大数据平台研发工作 鄞乐炜 联通(广东)产业互联网公司 大数据工程师,主要从事大数据平 ...

  5. 大数据平台迁移实践 | Apache DolphinScheduler 在当贝大数据环境中的应用

    大家下午好,我是来自当贝网络科技大数据平台的基础开发工程师 王昱翔,感谢社区的邀请来参与这次分享,关于 Apache DolphinScheduler 在当贝网络科技大数据环境中的应用. 本次演讲主要 ...

  6. Apache DolphinScheduler ASF 孵化器毕业一周年,汇报来了!

    不知不觉,Apache DolphinScheduler 已经从 Apache 软件基金会(以下简称 ASF)孵化器毕业一年啦! 北京时间 2021 年 4 月 9 日,ASF 官方宣布 Apache ...

  7. 论语音社交视频直播平台与 Apache DolphinScheduler 的适配度有多高

    在 Apache DolphinScheduler& Apache ShenYu(Incubating) Meetup 上,YY 直播 软件工程师 袁丙泽 为我们分享了<YY直播基于Ap ...

  8. Apache DolphinScheduler&ShenYu(Incubating) 联合 Meetup,暖春 3 月与你相约!

    云霞出海曙,梅柳渡江春. 2022 年的早春在疫情中显得格外生机勃勃,虽然接下来寒流仍有可能造访国内部分地区,但开源的世界,早已热闹非凡! 2022 年 3 月 26 日(星期六), Apache D ...

  9. WorkflowAsCode 来了,Apache DolphinScheduler 2.0.2 惊喜发布

    文章目录 前言 01 新功能 1 WorkflowAsCode 2 企业微信告警方式支持群聊消息推送 02 优化 1 简化元数据初始化流程 2 删除补数日期中的"+1"(天) 03 ...

随机推荐

  1. Codeforces Round #793 (Div. 2)

    C. LIS or Reverse LIS? D. Circular Spanning Tree E. Unordered Swaps F MCMF?

  2. CabloyJS实现了一款基于X6的工作流可视化编辑器

    介绍 文档演示:CMS审批工作流演示了如何通过JSON来直接创建一个工作流定义,通常用于为具体的业务数据生成预定义或内置审批工作流的场景 CabloyJS 4.8.0采用X6 图编辑引擎实现了一款工作 ...

  3. 一个支持数据绑定与数据联动的Dashboard

    什么是仪表盘 仪表盘是不同部件的组合,可以在一个页面集中显示各类信息,方便用户集中查看信息.并快速处理业务 关于制作部件,请参见:制作部件 CabloyJS仪表盘的特点 更灵活的自适应能力,可以针对m ...

  4. rpc的正确打开方式|读懂Go原生net/rpc包

    前言 最近在阅读字节跳动开源RPC框架Kitex的源码,分析了如何借助命令行,由一个IDL文件,生成client和server的脚手架代码,也分析了Kitex的日志组件klog.当然Kitex还有许多 ...

  5. Ubuntu安装python固定版本

    一. 安装python3.7 本篇文章使用python3.7安装步骤为例 1.直接使用apt-get安装python3.7 apt-get install python3.7 该方法经常会出现unab ...

  6. springboot整合ueditor实现图片上传和文件上传功能

    springboot整合ueditor实现图片上传和文件上传功能 写在前面: 在阅读本篇之前,请先按照我的这篇随笔完成对ueditor的前期配置工作: springboot+layui 整合百度富文本 ...

  7. vue大型电商项目尚品汇(后台篇)day03

    今天把平台属性的管理基本完成了,后台管理做到现在基本也开始熟悉,确实就是对ElementUI的一个熟练程度. 一.平台属性管理 1.动态展示数据 先把接口弄好,应该在第三级标题选择后进行发请求 静态页 ...

  8. Nodejs实现图片的上传、压缩预览、定时删除

    前言 我们程序员日常都会用到图片压缩,面对这么常用的功能,肯定要尝试实现一番.第一步,node基本配置 这里我们用到的是koa框架,它可是继express框架之后又一个更富有表现力.更健壮的web框架 ...

  9. Museui 图标速览,再也不用担心网页打不开了

    更多内容请见原文,原文转载自:https://blog.csdn.net/weixin_44519496/article/details/119328173

  10. 简单ELK配置实现生产级别的日志采集和查询实践

    概述 生产问题 集群规模如何规划? 集群中节点角色如何规划? 集群之脑裂问题如何避免? 索引分片如何规划? 分片副本如何规划? 集群规划 准备条件 先估算当前系统的数据量和数据增长趋势情况. 现有服务 ...