当前位置: 首页>数据库>正文

dolphinscheduler 调度mysql脚本 dolphin任务调度

DolphinSchedule 简介

Apache DolphinScheduler是一个分布式去中心化,易扩展的可视化DAG工作流任务调度平台。解决数据研发ETL 错综复杂的依赖关系,不能直观监控任务健康状态等问题。DolphinScheduler以DAG流式的方式将Task组装起来,可实时监控任务的运行状态,同时支持重试、从指定节点恢复失败、暂停及Kill任务等操作

官网:https://dolphinscheduler.apache.org/zh-cn/index.html

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_apache,第1张

DolphinSchedule 几种特点

简单易用
DAG监控界面,所有流程定义都是可视化,通过拖拽任务定制DAG,通过API方式与第三方系统对接, 一键部署

高可靠性
去中心化的多Master和多Worker, 自身支持HA功能, 采用任务队列来避免过载,不会造成机器卡死

丰富的使用场景
支持暂停恢复操作.支持多租户,更好的应对大数据的使用场景. 支持更多的任务类型,如 spark, hive, mr, python, sub_process, shell

高扩展性
支持自定义任务类型,调度器使用分布式调度,调度能力随集群线性增长,Master和Worker支持动态上下线

安装所需环境

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任务提交需要安装

一、安装 zookeeper(window)

  1. 链接:apache-zookeeper-3.6.3-bin.tar.gz 下载 提取码:0213
  2. 在解压后的zookeeper中创建data和log文件夹以便收集数据和日志
  3. dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_apache_02,第2张

  4. 将conf目录下的zoo_sample.cfg文件,复制一份,重命名为zoo.cfg,修改其中数据和日志的配置,如:
  5. dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_java_03,第3张

  6. 并添加如下配置
  7. dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_apache_04,第4张

  8. 在bin中先运行 zkServer.cmd,然后运行zkCli.cmd 查看zk运行状态,可以查看zk节点信息即代表安装成功。(最后启动的时候记得启动 zkServer.sh
    zkServer.cmd
  9. dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_apache_05,第5张

  10. zkCli.cmd
  11. dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_java_06,第6张

  12. 最后不要忘了点击 zkServer.sh 不然启动项目后会报连接zookeeper报错

二、搭建后端环境

  1. 下载dolphinscheduler源码
官网 :https://dolphinscheduler.apache.org/zh-cn/index.html

	地址 :https://github.com/apache/dolphinscheduler.git

	这里选用 1.3.6-release 分支。
	
	导入idea中
  1. 搭建数据库(项目中默认是pgsql,如果选择pgsql择无需以下数据库配置,咱们这里已mysql为列)
    —>1:本地mysql数据库创建 这里为:dolphinscheduler
    —>2:修改 dolphinscheduler-dao 模块的 datasource.properties(注释掉pgsql,放开mysql并修改成自己的mysql数据库)
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8
spring.datasource.username=root
spring.datasource.password=123456

—>3:修改根项目中 pom.xml,将 mysql-connector-java 依赖的 text 修改为 compile

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_xml_07,第7张

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

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_java_08,第8张

备注:控制台会有执行语句打印,执行完成去本地数据库查看表是否生成。

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_java_09,第9张

  1. 修改zookeeper连接(一般是不需要修改的,不过还是需要查看一下配置是否对)
    —>1:修改 dolphinscheduler-service 模块的 zookeeper.properties
    4.修改日志控制层输出,在logback-worker.xml、logback-master.xml、logback-api.xml中添加控制台输出
<appender-ref ref="STDOUT"/>

—>1:ogback-worker.xml、logback-master.xml 修改在dolphinscheduler-server

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_xml_10,第10张

—>2:logback-api.xml 在 dolphinscheduler-api 中

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_apache_11,第11张

  1. 设置MasterServer,WorkerServer以及ApiApplicationServer文件运行的Applicatio
    —>1:MasterServer,WorkerServer以及ApiApplicationServer文件位置

    ApiApplicationServer 位置
    —>2:配置三个文件为启动项
    1:复制文件路径

    2:添加启动项

    3:添加 ApiApplicationServer

    4:添加 MasterServer,WorkerServer


    序号4 设置 VM Options:
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
  1. 修改 api中的application-api.properties改成application.properties
  2. dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_java_12,第12张

三、运行后端环境

  1. 顺序启动 MasterServer–>WorkerServer–>ApiApplicationServer
  2. 如果需要用到日志功能,执行 org.apache.dolphinscheduler.server.log.LoggerServer 的main 方法。
  3. 后端swagger地址 :http://localhost:12345/dolphinscheduler/doc.html?language=zh_CN&lang=cn

四、搭建前端环境

  1. 安装node.js
  2. 点击安装node.js

五、启动前端环境

  1. 进去本地 dolphinscheduler-ui,运行 (也可使用前端工具运行)
  2. 输入命令
npm install
	npm run start

显示如下启动成功

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_xml_13,第13张

  1. 浏览器访问:http://localhost:8888
  2. 用户名密码
用户:admin
	密码:dolphinscheduler123

访问成功:

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_zookeeper_14,第14张

六、DolphinSchedule 简单上手

快速上手
喜欢看视频的伙伴可以参见手把手教你如何《快速上手 Apache DolphinScheduler 教程》

创建队列

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_zookeeper_15,第15张

创建租户

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_apache_16,第16张

创建普通用户

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_zookeeper_17,第17张

创建告警组

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_apache_18,第18张

创建Worker分组

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_apache_19,第19张

创建环境

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_xml_20,第20张

创建token令牌

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_apache_21,第21张

使用普通用户登录

点击右上角用户名“退出”,重新使用普通用户登录。

项目管理->创建项目->点击项目名称

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_zookeeper_22,第22张

点击工作流定义->创建工作流定义->上线工作流定义

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_apache_23,第23张

运行工作流定义->点击工作流实例->点击工作流实例名称->双击任务节点->查看任务执行日志

dolphinscheduler 调度mysql脚本 dolphin任务调度,dolphinscheduler 调度mysql脚本 dolphin任务调度_zookeeper_24,第24张

七、安装及运行过程中会遇到的问题

  1. 执行时zookeeper启动报错
2022-03-22 00:30:54.006  INFO 28800 --- [localhost:2181)] org.apache.zookeeper.ClientCnxn          : Socket error occurred: localhost/0:0:0:0:0:0:0:1:2181: Connection refused: no further information
2022-03-22 00:30:55.115  INFO 28800 --- [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)

解决方法:执行bin/zkServer.sh start,启动zookeeper.

  1. 可以启动DolphinScheduler的,但是12345端口无法访问。

解决方法:

dolphinscheduler-api这个歌module的resource文件下application-api.properties的名称问题,导致springboot扫描不到app的port配置,所以需要把application-api.properties改成application.properties。

如有问题,欢迎各位朋友下方留言讨论



https://www.xamrdz.com/database/6x61961454.html

相关文章: