海豚调度器DolphinScheduler的安装和使用

跟的Azkaban非常的相似,作用基本相同

主要用于数仓项目 是一个分布式、易扩展的可视化DAG工作流任务调度平台

DolphinScheduler的主要角色如下:

  MasterServer采用分布式无中心设计理念,MasterServer主要负责 DAG 任务切分、任务提交、任务监控,并同时监听其它MasterServer和WorkerServer的健康状态。

WorkerServer也采用分布式无中心设计理念,WorkerServer主要负责任务的执行和提供日志服务。

ZooKeeper服务,系统中的MasterServer和WorkerServer节点都通过ZooKeeper来进行集群管理和容错。

Alert服务,提供告警相关服务。

API接口层,主要负责处理前端UI层的请求。

UI,系统的前端页面,提供系统的各种可视化操作界面。

一、安装

因为安装DolphinScheduler需要很大的内存,配置稍微差点的电脑支撑不住,所以我们这里只配置它的单机模式(节省内存)

1) 上传压缩包,解压

tar -zxvf xxx.tar.gz -C /opt/installs/

将mysql的驱动包拷贝到所有的服务的jars目录下:

cd apache-dolphinscheduler-3.1.8-bin cp /opt/installs/hive/lib/mysql-connector-java-8.0.26.jar ./standalone-server/libs/standalone-server/

因为使用单机模式的时候默认使用的是自带的数据库h2,每次打开dolphinscheduler就会删除之前的东西,所以这里我们将数据库更改为mysql,这样就可以存储我们之前的任务了

CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; 
创建用户[非必须的] 假如你想创建,会遇到密码太简单的问题: 
如果提示密码等级过低: #mysql8 
set global validate_password.policy=LOW; 
set global validate_password.length=4; 
set global validate_password.mixed_case_count=0; 
set global validate_password.number_count=0; 
set global validate_password.special_char_count=0; 
创建新用户: CREATE USER 'dolphinscheduler'@'%' IDENTIFIED BY '123456'; GRANT ALL PRIVILEGES ON dolphinscheduler.* TO 'dolphinscheduler'@'%'; FLUSH PRIVILEGES;

在linux中运行

export DATABASE=mysql export SPRING_PROFILES_ACTIVE=dolphinscheduler export SPRING_DATASOURCE_URL="jdbc:mysql://bigdata01:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8&useSSL=false&allowPublicKeyRetrieval=true" export SPRING_DATASOURCE_USERNAME=dolphinscheduler export SPRING_DATASOURCE_PASSWORD=123456

最后初始化即可

bash tools/bin/upgrade-schema.sh

这时我们会发现mysql中多了一个dolphinscheduler数据库,库中还多了61个表

最后修改配置文件即可(application.yaml)

修改 DolphinScheduler 的配置 在 DolphinScheduler 的安装目录下找到 conf/application.yaml 文件。 将其中关于数据库连接的部分修改为指向你的 MySQL 实例,包括用户名、密码、数据库名等信息。以下是修改后的示例: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://bigdata01:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8&useSSL=false&allowPublicKeyRetrieval=true username: dolphinscheduler password: 123456

二、使用

安装配置好之后,下面就是使用了

访问路径:http://bigdata01:12345/dolphinscheduler/ui/

默认用户名为:admin 密码为: dolphinscheduler123

1) 创建用户

进入后可看到一个这样的页面

我们想要运行,就需要先在安全中心中 创建一个租户

之后点开用户管理,将刚刚创建的租户授权给默认的用户

2)创建项目

如图所示,点击这些位置就可以创建一个工作流,都是可视化的,只需要点点点、拖拽即可

里面写上我们需要的脚本或者代码

创建好了流之后,需要先上线才能运行,(需要编辑的话,需要先下线)

点击运行暂时直接默认点确定即可

运行后,点开任务实例,就可以查看我们运行的脚本了

3) 上传

dolphinscheduler不但可以自己定义脚本,还可以上传文件

那么文件上传到了哪里了呢 , 其实是上传到了hdfs上

此时我们点击上传,就会出现如图错误

这是因为我们这时还没有在配置文件中写入hdfs配置

 

在这个配置文件下修改standalone-server下的common.properties resource.storage.type=HDFS resource.storage.upload.base.path=/dolphinscheduler resource.hdfs.fs.defaultFS=hdfs://bigdata01:9820

修改hdfs的权限: hdfs dfs -chmod -R 777 /

这时我们就发现可以将文件上传到hdfs上了

4) 定时任务

可以在这里设置定时任务

自己选择自己想要的定时时间即可

定时任务编辑好后,记得上线定时任务和工作流

运行时,定时任务就自动运行了

5) 告警机制

dolphinscheduler和azkaban一样,都有独特的告警机制

如果我们的任务运行出了错误或者执行成功了,就可以通过设置让他们给我发email等提醒我们

想要设置告警机制就需要如图点击

创建好自己的告警实例里面填入自己的信息

注意抄送人这里栏,虽然不是必填项,但是不能乱填入东西 例如:me myself什么的

这里要么填入真正的邮箱,要么什么都不写,要不会收不到邮件

之后再点击告警组,如图所示创建

这样我们的告警机制就创建好了,怎么使用他呢?

回到我们的工作流定义界面

点击运行,可以发现告警组这里多出了选择栏,选择我们需要的即可

这时候我们就可以静静的等他运行好或者运行失败给我们发邮件即可

邮件截图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值