今天,Apache DolphinScheduler 3.2.0 版本在万众期待中终于发布了!
现在,来看看新版本的全新“样貌”吧!
Release Note: https://github.com/apache/dolphinscheduler/releases/tag/3.2.0
下载地址: https://dolphinscheduler.apache.org/en-us/download/3.2.0
**主要更新包括:**
> - 添加默认租户
> - 新增多种数据源
> - 新增任务类型
> - 重跑任务时指定工作流向前、向后运行
> - 增加远程日志功能
> - 参数优化
> - 资源中心
> - 增强页面易用性
> - 云原生支持新增 Spark on k8S 支持
> - 增加了部分 Restful API
> - 注册中心增加 ETCD、JDBC 注册中心
> - 架构优化
# 添加默认租户
在之前的版本中,用户部署完毕后必须手动添加租户。3.2.0 版本中添加了默认租户,方便用户更直接地使用 Apache DolphinScheduler。
# 新增多种数据源
新增了多个数据源,如 Snowflake、Databend、Kyuubi、Doris、OceanBase、Dameng、AzureSQL、StarRocks、AWS Athena、,并且更新了部分数据源,如 Redshift 增加 Access key。
![image.png](https://dev-media.amazoncloud.cn/982e4eb1cb114de4a183678d993889ee_image.png "image.png")
# 新增任务类型
新增了多个任务类型,包括:
- > - 通用模块中,增加 Remote-shell组件、Java Task
>
> - Cloud 模块中,新增 Amazon DMS、Azure Datafactory、AWS Database Migration,增强与各种云的互联互通
>
> - [机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)模块中,新增 Kubeflow组件(基于云原生构建的[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)任务工具大合集)
>
> - 其他模块中,增加 AmazonDatasync、Apache Linkis
>
![image.png](https://dev-media.amazoncloud.cn/622bc589019a471288bd71cb85c59f87_image.png "image.png")
![image.png](https://dev-media.amazoncloud.cn/ada42a8b966146d4a980dbcde5df8fd2_image.png "image.png")
![image.png](https://dev-media.amazoncloud.cn/c8be6643d2c5472eaca6d7159b687dec_image.png "image.png")
![image.png](https://dev-media.amazoncloud.cn/b7088da705c24919a377db3e4037ad23_image.png "image.png")
并更新了部分任务,如 DataX 支持 Presto,http任务增加output 参数传递,运行批量同时 kill 多个 Yarn 任务:
![image.png](https://dev-media.amazoncloud.cn/f7d35b279edb41c9a06a263882bacc0c_image.png "image.png")
Dependent 支持依赖自己:
![image.png](https://dev-media.amazoncloud.cn/d76c8a85df754664bb9d44a95cb2d3af_image.png "image.png")
支持了 Zeppelin 鉴权;
此外,任务现在可以支持缓存;
![image.png](https://dev-media.amazoncloud.cn/51a05176280849dab45fa71d5017cb42_image.png "image.png")
Sqoop 日志支持隐藏密码;
以及 SQL 任务支持默认切割符:
![image.png](https://dev-media.amazoncloud.cn/d78dd81a61194d718f09a1510af6db19_image.png "image.png")
# 新增远程日志功能
3.2.0 版本增加了远程日志功能,并同时支持了 Google Cloud Storage、[Amazon S3](https://aws.amazon.com/cn/s3/?trk=cndc-detail)、阿里云 OSS 日志存储,用户可以通过编辑配置文件,把日志存储到云端,解决万一意外情况发生,Woker 日志不存在,用户无法查看日志的问题。
![image.png](https://dev-media.amazoncloud.cn/4e23019048374ae3a3390ea574fc5cdc_image.png "image.png")
# 参数优化
> - 增加了项目级别参数
> - 调整参数优先级,启动参数最高
> - 增加了内置参数计算规则
![image.png](https://dev-media.amazoncloud.cn/612edaf4aba84a08bf43965e57db9015_image.png "image.png")
- 增加了文件类型的参数
![file](https://img-blog.csdnimg.cn/e256e08cadd94eddaa505951afa01c06.png)
![image.png](https://dev-media.amazoncloud.cn/baab81246f964f59b9fb76f72e8f430e_image.png "image.png")
# 云原生相关
- 支持 KEDA 做 worker 自动扩缩容
- 支持 Terraform 部署到 AWS
- zk 和 pg 支持多架构
- 提交 Spark 任务到 Kubernetes
- 获取 pod 实时日志
- 自定义 k8s 任务标签
# 资源中心
增加了 Alibaba Cloud OSS 、Huawei Cloud OBS、Azure Blob Storage的支持,重构资源中心并设计默认使用本地作为存储介质,重新支持了 re-upload。
![image.png](https://dev-media.amazoncloud.cn/62d4c3422f1c4923963982ad0d36d035_image.png "image.png")
资源中心容许覆盖上传,优化文件路径,显示文件的全部路径。另外,之前版本中资源中心已经上传的同类型文件只能删除后重新上传,新版本中对本功能进行了优化,可以点击上传按钮进行上传。
![image.png](https://dev-media.amazoncloud.cn/88778682c489412eb2cabff477f27fe0_image.png "image.png")
支持 reupload 文件
# API 增强
3.2.0 版本中,增加了部分 Restful API,包括 taskInstance、workflow state、workflowInstance、workflow and schedule、task relation,且API 触发工作流运行可以获得 instance ID,从而使得 Apache DolphinScheduler 的 API 能力得到显著增强。
# 增加页面易用性
3.2.0 增加了页面易用性和便利性,如增加 workflow instance 跳转到当前工作流、复制工作流名称、调整列宽等操作。
![image.png](https://dev-media.amazoncloud.cn/adbb34567f884c0f840ae16ab9269cc4_image.png "image.png")
跳转到工作流实例
![image.png](https://dev-media.amazoncloud.cn/4870bcba4efd451bb9305001ec44576b_image.png "image.png")
复制工作流名称
![image.png](https://dev-media.amazoncloud.cn/5c168bc9f7924c9c9584780a89893434_image.png "image.png")
调整列表名称宽度
默认情况下会有 default 租户和本地资源中心,安装后就能使用。
![image.png](https://dev-media.amazoncloud.cn/d5970547e9d64639bf60dc745e451c10_image.png "image.png")
默认租户
允许在 workflow instance 中重新运行任务,任务运行日志更加明确。
![image.png](https://dev-media.amazoncloud.cn/1f6525a6096046b9b1415274e0293dfc_image.png "image.png")
可以重新运行任务
json 导出可阅读性加强。
![image.png](https://dev-media.amazoncloud.cn/f8f6c1cb80c94727888489ac8512a093_image.png "image.png")
# 注册中心
增加了 ETCD、JDBC 注册中心。
# 架构
- Alert 支持 HA
- 单线程更新 Kerberos
- Worker server 移除了 dao 依赖
- 接管 task instance 失败的任务
- 增加动态任务组配置
- 重构了逻辑任务和远程命令
- 资源限制(cpu 内存)从原来绝对值改成百分比
- 支持了 SSO
其中,支持了 SSO 后,用户可以通过 Casdoor 实现 SSO 登录。Casdoor 是基于 OAuth 2.0、OIDC、SAML 和 CAS 的面向 UI 的身份访问管理(IAM)/单点登录(SSO)平台,需要先部署 Casdoor 并获取 \`Client ID\\` 和 \`Client secret\\` 两个字段,再修改 dolphinscheduler-api/src/main/resources/application.yaml 文件配置 SSO。
可以通过以下步骤通过 Casdoor 为 Apache Dolphinscheduler 添加 SSO 功能:
```
security:
authentication:
# Authentication types (supported types: PASSWORD,LDAP,CASDOOR_SSO)
type: CASDOOR_SSO
casdoor:
# Your Casdoor server url
endpoint:
client-id:
client-secret:
# The certificate may be multi-line, you can use `|-` for ease
certificate:
# Your organization name added in Casdoor
organization-name:
# Your application name added in Casdoor
application-name:
# Doplhinscheduler login url
redirect-url: http://localhost:5173/login
```
# 贡献者列表
感谢@zhongjiajie对此次发版的指导,以及下列贡献者的支持:
> 106umao, Abingcbc, AliceXiaoLu, BongBongBang, CallMeKingsley97, Chris-Arith, DarkAssassinator, EricGao888, EricPyZhou, FlechazoW, Gallardot, GavinGYM, IT-Kwj, LiXuemin, LucasClt, Mukvin, NoSuchField, Orange-Summer, QuantumXiecao, Radeity, Rianico, SYSU-Coder, SbloodyS, Tianqi-Dotes, TyrantLucifer, ZhongJinHacker, Zzih, ahuljh, alei1206, alextinng, amaoisnb, arlendp, baihongbin, bmk15897, boy-xiaozhang, c3Vu, caishunfeng, calvinjiang, darrkz, davidzollo, dddyszy, devosend, ediconss, eye-gu, fengjian1129, fuchanghai, guowei-su, haibingtown, hantmac, hdygxsj, hezean, hiSandog, hoey94, hstdream, huage1994, imizao, insist777, iuhoay, jackfanwan, jbampton, jieguangzhou, kezhenxu94, kingbabingge, labbomb, lenian, ly109974, lynn-illumio, moonkop, muggleChen, pandong2011, pppppjcc, qianli2022, qindongliang, qingwli, rickchengx, ruanwenjun, sandiegoe, seedscoder, shangeyao, shenyun, simsicon, sketchmind, stalary, tracehh, whhe, xdu-chenrj, xiaomin0322, xinxingi, xuchunlai, xxjingcd, yeahhhz, youzipi, zhangfane, zhangkuantian, zhaohehuhu,zhoufanglu, zhuangchong, zhutong6688, zhuxt2015, zzzhangqi