目录

  • 简介&特点:
  • 架构:
  • 须知:
  • 1. 安装包下载:
  • 2. windows安装zookeeper
  • 3. 搭建后端环境:
  • 4. 运行后端环境:
  • 5. 搭建前端环境:
  • 安装启动过程中遇到的问题
  • 6.测试案例工作流任务调度
  • LINUX环境部署:


简介&特点:

Apache DolphinScheduler(目前处在孵化阶段)是一个分布式、去中心化、易扩展的可视化DAG工作流任务调度系统,其致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用。

特点:
DolphinScheduler提供了许多易于使用的功能,可加快数据ETL工作开发流程的效率。其主要特点如下:

通过拖拽以DAG 图的方式将 Task 按照任务的依赖关系关联起来,可实时可视化监控任务的运行状态;
支持丰富的任务类型;
支持工作流定时调度、依赖调度、手动调度、手动暂停/停止/恢复,同时支持失败重试/告警、从指定节点恢复失败、Kill 任务等操作;
支持工作流全局参数及节点自定义参数设置;
支持集群HA,通过 Zookeeper实现 Master 集群和 Worker 集群去中心化;
支持工作流运行历史树形/甘特图展示、支持任务状态统计、流程状态统计;
支持补数,并行或串行回填数据

架构:

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_zookeeper

须知:

Mysql (5.5+) : 必装
JDK (1.8+) : 必装
ZooKeeper(3.4.6+) :必装
Hadoop(2.6+) 选装, 如果需要使用到资源上传功能,MapReduce任务提交则需要配置Hadoop(上传的资源文件目前保存在Hdfs上)
Hive(1.2.1) : 选装,hive任务提交需要安装
Spark(1.x,2.x) : 选装,Spark任务提交需要安装

1. 安装包下载:

DolphinScheduler源码下载地址https://github.com/apache/dolphinscheduler.git

2. windows安装zookeeper

1>. 下载zookeeper安装包:https://www.apache.org/dyn/closer.lua/zookeeper/zookeeper-3.6.3/apache-zookeeper-3.6.3-bin.tar.gz 2>. 解压apache-zookeeper-3.6.3-bin.tar.gz

3>. 在zookeeper的目录下新建data、log文件夹

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_zookeeper_02


4>. 将conf目录下的zoo_sample.cfg文件,复制一份,重命名为zoo.cfg,修改其中数据和日志的配置


修改如下:

dataDir=D:\\code\\apache-zookeeper-3.6.3-bin\\data
dataLogDir=D:\\code\\apache-zookeeper-3.6.3-bin\\log

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_spark_03


5>. 在bin中优先运行 zkServer.cmd,然后运行zkCli.cmd 查看zk运行状态,可以查看zk节点信息即代表安装成功。


出现以下信息,代表zookeeper安装成功

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_big data_04

3. 搭建后端环境:

1>. 新建一个自我调试的mysql数据库,库名可为 :任意起(我这里的是d_s)

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_etl_05


2>. 把代码导入idea,修改根项目中 pom.xml,将 mysql-connector-java 依赖的 scope 修改为 compile


3>. 修改 dolphinscheduler-dao 模块的 datasource.properties

#mysql
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/d_s?useUnicode=true&characterEncoding=UTF8
spring.datasource.username=root
spring.datasource.password=root

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_zookeeper_06

4>. 刷新 dao 模块,运行 org.apache.dolphinscheduler.dao.upgrade.shell.CreateDolphinScheduler 的 main 方法,自动插入项目所需的表和数据

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_spark_07


插入完成后(查看MySQL数据库):

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_spark_08


5>. 修改 dolphinscheduler-service 模块的 zookeeper.properties

zookeeper.quorum=localhost:2181


6>. 在logback-worker.xml、logback-master.xml、logback-api.xml中添加控制台输出

1). logback-worker.xml、logback-master.xml 添加控制台输出

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_etl_09

2). logback-api.xml 添加控制台输出


7>. 设置MasterServer,WorkerServer以及ApiApplicationServer文件运行的Application

1). MasterServer,WorkerServer以及ApiApplicationServer文件位置

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_big data_10


2). 复制文件路径:

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_etl_11


dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_etl_12


dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_windows_13


参照以上MasterServer配置后面两个

在上图 6 配置的地方 如下:

MaseterServer:
-Dlogging.config=classpath:logback-master.xml -Ddruid.mysql.usePingMethod=false
WorkerServer:
-Dlogging.config=classpath:logback-worker.xml -Ddruid.mysql.usePingMethod=false
ApiApplicationServer:
-Dlogging.config=classpath:logback-api.xml -Dspring.profiles.active=api

4. 运行后端环境:

安装顺序启动Java程序中Main方法

1>. org/apache/dolphinscheduler/server/master/MasterServer.java2>. org/apache/dolphinscheduler/server/worker/WorkerServer.java3>. org/apache/dolphinscheduler/api/ApiApplicationServer.java

如果需要用到日志功能,执行 org.apache.dolphinscheduler.server.log.LoggerServer 的main 方法。

后端swagger地址(web界面) :

http://localhost:12345/dolphinscheduler/doc.html?language=zh_CN&lang=cn

5. 搭建前端环境:

  1. 本机安装node

链接:https://pan.baidu.com/s/1_IWDnz8p6AF8beiBujTMOQ 提取码:1nem

  1. 进入 dolphinscheduler-ui,运行

    分别输入语句
  1. npm install
  2. npm run start
    执行成功后出现以下信息:

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_zookeeper_14

  1. 访问(web界面)

http://localhost:8888

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_windows_15

  1. 登录默认管理员账号

用户:admin
密码:dolphinscheduler123

安装启动过程中遇到的问题

修改完成执行时zookeeper启动报错:

2021-09-30 13:58:03.039 INFO 22304 — [localhost:2181)] org.apache.zookeeper.ClientCnxn : Socket error occurred: localhost/0:0:0:0:0:0:0:1:2181: Connection refused: no further information

2021-09-30 13:58:04.169 INFO 22304 — [localhost:2181)] org.apache.zookeeper.ClientCnxn : Opening socket connection to server localhost/0:0:0:0:0:0:0:1:2181. Will not attempt to authenticate using SASL (unknown error)

2021-09-30 13:58:06.181 INFO 22304 — [localhost:2181)] org.apache.zookeeper.ClientCnxn : Socket error occurred: localhost/0:0:0:0:0:0:0:1:2181: Connection refused: no further information

2021-09-30 13:58:07.296 INFO 22304 — [localhost:2181)] org.apache.zookeeper.ClientCnxn : Opening socket connection to server localhost/127.0.0.1:2181. Will not attempt to authenticate using SASL (unknown error)

解决:
这个错误我在网上查了好久,后来发现是没有执行bin/zkServer.sh start,启动zookeeper.
然后就启动客户端了bin/zkCli.sh🤔

程序就能正常运行并打开web前后端页面了。

dolphinscheduler 运行需要hadoop环境吗 dolphinscheduler windows_windows_16