〔从零搭建〕离线开发平台部署指南

136 阅读6分钟

🔥🔥 AllData大数据产品是可定义数据中台,以数据平台为底座,以数据中台为桥梁,以机器学习平台为中层框架,以大模型应用为上游产品,提供全链路数字化解决方案。

✨杭州奥零数据科技官网:www.aolingdata.com ✨AllData开源项目:github.com/alldatacent… ✨Gitee组织:gitee.com/alldatacent…

摘要:离线开发平台基于开源项目DolphinScheduler建设,一个功能强大的分布式任务调度平台,支持复杂工作流编排、任务监控与告警,适用于离线数据处理场景。文章内容主要为以下五部分:

一、在线演示环境 二、功能简介 三、源码编译部署安装 四、访问离线开发平台页面 五、常见问题与解决方案

💡Tips:关注「公众号」大数据商业驱动引擎

在线演示环境.jpg

🔹AllData数据中台线上正式环境:http://43.138.156.44:5173/ui_moat/

请联系市场总监获取账号密码

官网主页.jpg

2.1 离线开发平台基于开源项目DolphinSchduler建设

🔹可视化操作 提供直观的可视化界面,用户通过简单的拖拽和配置操作,就能轻松创建复杂的工作流任务,无需编写大量代码,降低了使用门槛,提高了工作效率。

🔹任务调度与依赖 支持多种任务类型,如 Shell、SQL、Python 等,能满足不同数据处理场景的需求。可灵活设置任务之间的依赖关系,确保任务按照预定顺序执行,有效处理复杂的数据处理流程。

🔹资源管理 能够对计算资源进行统一管理和分配,根据任务的资源需求合理调度,提高资源利用率,避免资源浪费。

🔹监控与告警 实时监控任务的执行状态,包括任务进度、运行时长、资源使用情况等。当任务出现异常时,能及时发出告警通知,方便运维人员快速响应和处理问题,保障数据处理的稳定性和可靠性。

🔹多租户支持 支持多租户模式,不同租户可以在同一个平台上独立进行任务开发和管理,实现资源隔离和权限控制,满足企业内不同部门或团队的使用需求。

🔹DolphinScheduler开源项目:github.com/apache/Dolp… 🔹文档地址: dolphinscheduler.apache.org/zh-cn/docs/…

2.2 离线开发平台功能特点

  • 分布式易扩展架构
  • 可视化DAG工作流编排
  • 多租户与权限管理
  • 任务类型丰富
  • 高可靠性与容错机制
  • 灵活的调度策略
  • 任务状态监控与日志
  • 数据源集成能力
  • 版本控制与状态管理
  • 生态兼容性

源码编译部署安装.jpg 💡部署步骤: 部署流程.jpg

3.1 环境准备

🔹操作系统要求: 支持 Linux 或 macOS 系统(推荐使用 Ubuntu/CentOS 或 macOS)。确保系统已安装基础依赖工具(如 git、curl、wget 等)。

🔹Java环境: 安装 JDK 1.8 或更高版本(推荐使用 JDK 11)。 配置环境变量JAVA_HOME,并将$JAVA_HOME/bin添加到PATH。 验证安装:java -version

🔹Maven 环境: 安装 Maven 3.6 或更高版本。 配置环境变量MAVEN_HOME,并将$MAVEN_HOME/bin添加到PATH。 验证安装:mvn -v

🔹数据库: 支持 MySQL或 PostgreSQL。 创建数据库用户并授予权限,例如:

carbon-2.png

🔹其他依赖:

确保系统已安装 Node.js(用于前端构建,可选)。

确保系统已安装 Python(用于部分脚本执行,可选)。

3.2 源码编译部署获取安装包dat

carbon-1.png

3.3 编译构建 --编译后端代码: 进入项目根目录,执行以下命令进行编译:

carbon-4.png

编译完成后,生成的二进制包位于 dolphinscheduler-assembly/target 目录下,例如:

carbon-5.png

--编译前端代码(可选): 如果需要修改前端界面,可以编译前端代码 编译完成后,前端静态文件会生成到 ui_ds/ui_ds 目录。

image.png

--选择JDK8

离线开发平台-选择JDK8.png

3.4 源码打包 --Maven Clean 离线开发平台-Maven Clean.png

--Maven Package

离线开发平台-Maven Package-1.png

离线开发平台-Maven Package-2.png

离线开发平台-Maven Package-3.png

--获取安装包dolphinscheduler-install.tar.gz

离线开发平台-获取安装包dolphinscheduler-install.tar.png

--操作流程说明:

离线开发平台-获取安装包dolphinscheduler-install.tar.png

3.5 部署与安装

🔹解压二进制包

将编译生成的二进制包解压到部署目录: carbon-9.png

🔹配置数据库

修改数据库配置文件 conf/application.yaml,例如: carbon-10.png

🔹配置Zookeeper 修改 ZooKeeper 配置文件 conf/zookeeper.properties,例如:

🔹配置Zookeeper 修改 ZooKeeper 配置文件 conf/zookeeper.properties,例如:

🔹初始化数据库 执行数据库初始化脚本 脚本会自动执行 dolphinscheduler-dao/src/main/resources/sql 目录下的 SQL 文件。

🔹启动服务 启动Zookeeper(如果尚未启动):

carbon-13.png

启动DolphinScheduler服务:

carbon-14.png

验证服务是否启动成功:

carbon-15.png

🔹访问Web界面

访问离线开发平台页面.jpg

4.1 功能概览 1_功能概览.jpg

4.2 项目管理 2_项目管理.jpg

4.3 进入工作流页面 3_进入工作流页面.png

🔹拖动Shell节点

配置节点名称:mysql1

配置运行标志:正常

任务优先级:MEDIUM

Worker分组:DS-Worker

配置脚本:

carbon-16.png

🔹启动工作流

填写HTTP请求的URL、请求方法(如GET、POST)、请求头、请求体等信息。这些参数将用于向HTTP服务发送请求并获取数据。 4_启动工作流.png

🔹拖动第2个Shell节点

配置节点名称:mysql2

配置运行标志:正常

任务优先级:MEDIUM

Worker分组:DS-Worker

前置任务:Mysql1

配置脚本: carbon-17.png

🔹拖动第3个Shell节点

配置节点名称:mysql3

配置运行标志:正常

任务优先级:MEDIUM

Worker分组:DS-Worker

前置任务:Mysql2

配置脚本: carbon-18.png

4.4 启动工作流 4_启动工作流.png

4.5 查看工作流实例 6_查看工作流实例.png

4.6 查看任务实例 7_查看任务实例.png

4.7 任务执行结果日志 8_任务执行结果日志 .png

4.8 项目管理-新建项目 9_项目管理-新建项目.jpg

4.9 文件管理-创建文件夹 10_文件管理-创建文件夹.jpg

4.10 文件管理-创建文件 11_文件管理-创建文件.jpg

4.11 文件管理-上传文件 12_文件管理-上传文件.jpg

4.12 资源管理-创建文件夹 13_资源管理-创建文件夹.jpg

4.13 资源管理-上传UDF资源 13_资源管理-上传UDF资源.jpg

4.14 函数管理-UDF函数 14_函数管理-UDF函数.jpg

4.15 函数管理-创建UDF函数 15_函数管理-创建UDF函数.jpg

4.16 任务组管理-任务组配置 16_任务组管理-任务组配置.jpg

4.17 任务组配置-创建任务组 17_任务组配置-创建任务组.jpg

4.18 任务组配置-编辑任务组 18_任务组配置-编辑任务组.jpg

4.19 任务组管理-任务组队列 19_任务组管理-任务组队列.jpg

4.20 数据质量-任务结果 20_数据质量-任务结果.jpg

4.21 数据质量-规则管理 21_数据质量-规则管理.jpg

4.22 源中心 22_源中心.jpg

4.23 源中心-创建源 23_源中心-创建源.jpg

4.24 源中心-创建源-创建数据源 24_源中心-创建源-创建数据源.jpg

4.25 监控中心-服务管理-Mastre 25_监控中心-服务管理-Master.jpg

4.26 监控中心-服务管理-Worker 26_监控中心-服务管理-Worker.jpg

4.27 监控中心-服务管理-Alert Server 27_监控中心-服务管理-Alert Server.jpg

4.28 监控中心-服务管理-DB 28_监控中心-服务管理-DB.jpg

4.29 监控中心-统计管理-Statistics 29_监控中心-统计管理-Statistics.jpg

4.30 监控中心-统计管理-审计日报 30_监控中心-统计管理-审计日报.jpg

4.31 安全中心-租户管理

31_安全中心-租户管理.jpg

4.32 安全中心-租户管理-创建租户

32_安全中心-租户管理-创建租户.jpg

4.33 安全中心-用户管理

33_安全中心-用户管理.jpg

4.34 安全中心-用户管理-创建用户

34_安全中心-用户管理-创建用户.jpg

4.35 安全中心-告警组管理

35_安全中心-告警组管理.jpg

4.36 安全中心-告警组管理-创建告警组

36_安全中心-告警组管理-创建告警组.jpg

4.37 安全中心-告警实例管理

37_安全中心-吿警实例管理.jpg

4.38 安全中心-告警实例管理-创建告警实例

38_安全中心-吿警实例管理-创建告警实例.jpg

4.39 安全中心-Worker分组管理

39_安全中心-Worker分组管理.jpg

4.40 安全中心-Worker分组管理-创建Worker分组

40_安全中心-Worker分组管理-创建Worker分组.jpg

4.41 安全中心-Yar队列管理-创建队列

40_安全中心-Worker分组管理-创建Worker分组.jpg

4.42 安全中心-Yar队列管理

42_安全中心-Yar队列管理.jpg

4.43 安全中心-环境管理

43_安全中心-环境管理.jpg

4.44 安全中心-环境管理-创建环境

44_安全中心-环境管理-创建环境.jpg

4.45 安全中心-集群管理

45_安全中心-集群管理.jpg

4.46 安全中心-集群管理-创建集群

46_安全中心-集群管理-创建集群.jpg

4.47 安全中心-K8S命名空间管理

47_安全中心-K8S命名空间管理.jpg

4.48 安全中心-K8S命名空间管理-创建命名空间

48_安全中心-K8S命名空间管理-创建命名空间.jpg

4.49 安全中心-令牌管理

49_安全中心-令牌管理.jpg

4.50 安全中心-令牌管理-创建令牌

50_安全中心-令牌管理—创建令牌.jpg

5.1 编译失败

  • 确保 Maven 版本符合要求(3.6+)。

  • 确保网络环境良好(可能需要配置 Maven 镜像)。

  • 如果遇到依赖冲突,可以尝试清理本地 Maven 仓库: 在这里插入图片描述

常见问题与解决方案.jpg

5.2 数据库连接失败:

  • 检查数据库配置是否正确。
  • 确保数据库服务已启动,并且用户权限配置正确。
  • 检查防火墙是否放行了数据库端口(默认 3306)。

5.3 ZooKeeper连接失败:

  • 检查 ZooKeeper 服务是否已启动。
  • 检查 ZooKeeper 配置是否正确。
  • 检查防火墙是否放行了 ZooKeeper 端口(默认 2181)。

5.4 服务启动失败:

  • 检查日志文件 logs/dolphinscheduler-*.log 获取详细错误信息。
  • 确保系统资源充足(内存、CPU 等)。
  • 确保端口未被占用(默认端口:12345、25333、50050 等)。