dolphinscheduler

dolphinscheduler

官网地址:

https://dolphinscheduler.apache.org/zh-cn/docs/3.2.1/about/hardware

1. 概念:dolphinscheduler是一个功能强大的开源调度系统,专为管理和调度大规模数据处理任务设计。

2. 特点:

  • 分布式架构、支持大规模
  • 多任务类型支持:支持多种任务类型,如hadoop、spark、flink、hive、py、shell等,满足不同数据处理需求。
  • 丰富的调度策略与监控:提供多种调度策略和强大的监控功能,帮助用户有效管理和优化任务执行。
  • 可视化操作,允许用户通过拖拽方式构建工作流,简化复杂任务的配置过程。
  • 易扩展性:可水平扩展
  • 高可用性和容错能力:通过去中心化架构和动态选举主节点机制,确保系统稳定运行。
  • 组件组成:
  1. masterserver: 负责任务的切分、提交和监控,同时监听其他masterserver和workerserver的状态。
  2. wokerserver: 执行具体任务并提供日志服务。
  3. zookeeper: 用于实现集群管理和容错。
  4. alert服务: 提供告警通知。
  5. api接口层:处理来自前端UI的请求。
  6. web UI:提供用户界面,支持工作流的可视化编辑和管理。

3. dophinscheduler,其中tenant,是租客

4. dophinscheduler,在ETL系统中,可以很好的编排这些ETL(Extract, Transform, Load),对于大数据计算框架如Spark和Flink的任务调度,DolphinScheduler能够有效地管理任务的执行顺序和资源分配。例如,在一个基于Spark的机器学习项目中,它可以安排数据准备任务、模型评估任务的执行顺序,并且合理的分配集群资源给这些任务。可以用于执行一些定时的数据备份、报表生成等任务。比如,企业需要每天定时生成销售报表,就可以使用.

5. 在定时任务方面,dolphinscheduler和crontab的区别

crontab

dolphinscheduler

简单的定时任务

复杂的定时任务,有依赖关系的,比如电商企业中,备份订单数据-->生成销售报表-->发给相关部门。dolphinscheduler将三个任务构建成一个工作流,设置好依赖关系,确保执行顺序。

可视化操作

文本文件

主要shell脚本

多类型,shell脚本任务、SQL任务、py脚本任务、spark任务、flink任务,轻松集成大数据处理框架和数据库系统。例如,在大数据分析场景中,可以使用ds调度spark任务进行数据处理,同时调度sql任务将处理后的数据存储到数据库中

本地系统上运行

分布式架构,在多节点的集群环境中运行,可通过worker节点扩容

6. dolphinscheduler的主要应用的背景,是大数据的各个强依赖

7. dolphinscheduler的特性:

8. 什么是有向无环图,无法从某个顶点出发,经过若干条边,回到该点。

安装步骤:

1. 购买云主机,主机名dolphinscheduler,4核8g,安装docker-ce,默认仓库的docker的版本25.0.2
2. 在dolphinscheduler官网下载源码包,将源码包传到linux机器,

https://dolphinscheduler.apache.org/zh-cn/download/3.1.8

3. 按照官方提供的docker-compose的方法启动dolphinscheduler项目,会提示拉不到镜像,所以需要到可用服务器拉镜像,打包发回到本地,load -i 加载到本地。

有个注意的点是,docker-compose之前是一个独立的软件,docker 20.10.0版本之后,变成docker的一个子命令了,所以直接docker compose起项目就可以了。

https://dolphinscheduler.apache.org/zh-cn/docs/3.1.8/guide/start/docker

$ DOLPHINSCHEDULER_VERSION=3.2.1
$ tar -zxf apache-dolphinscheduler-"${DOLPHINSCHEDULER_VERSION}"-src.tar.gz
# Mac Linux 用户
$ cd apache-dolphinscheduler-"${DOLPHINSCHEDULER_VERSION}"-src/deploy/docker
# Windows 用户, `cd apache-dolphinscheduler-"${DOLPHINSCHEDULER_VERSION}"-src\deploy\docker`# 如果需要初始化或者升级数据库结构,需要指定profile为schema
$ docker-compose --profile schema up -d# 启动dolphinscheduler所有服务,指定profile为all
$ docker-compose --profile all up -d

4. 购买可用云主机,配可用公网ip,安装docker,默认docker版本18.09.0。从docker官方拉镜像,docker save -o 保存到本地,然后tar -zxf打包

[root@ecs-dolphinscheduler docker]# pwd
/root/apache-dolphinscheduler-3.1.8-src/deploy/docker
[root@ecs-dolphinscheduler docker]# ls -A
docker-compose.yml  .docker-compose.yml.swp  docker-stack.yml  .env
[root@ecs-dolphinscheduler docker]# cat .env  | grep   "HUB"
HUB=apache
[root@ecs-dolphinscheduler docker]# cat .env  | grep   "TAG"
TAG=3.1.8
[root@ecs-dolphinscheduler docker]# pwd
/root/apache-dolphinscheduler-3.1.8-src/deploy/docker
[root@ecs-dolphinscheduler docker]# vim docker-compose.yml 
可以看到compose都需要哪些镜像。然后将变量HUB替换成apache,将TAG替换成3.1.8,在txt写出下方命令,批量复制粘贴到可用云主机,pull镜像
[root@ecs-hk ~]# docker images
REPOSITORY                             TAG                 IMAGE ID            CREATED             SIZE
apache/dolphinscheduler-tools          3.1.8               6ace46fb52e5        15 months ago       262MB
apache/dolphinscheduler-master         3.1.8               3d9a81c2a310        15 months ago       413MB
apache/dolphinscheduler-worker         3.1.8               dfea0380e28b        15 months ago       417MB
apache/dolphinscheduler-api            3.1.8               6c89b3044b7e        15 months ago       441MB
apache/dolphinscheduler-alert-server   3.1.8               b230163c3799        15 months ago       313MB
bitnami/postgresql                     11.11.0             783da6164a58        3 years ago         258MB
bitnami/zookeeper                      3.6.2               aaec1c668136        3 years ago         467MB

docker pull bitnami/postgresql:11.11.0

docker pull bitnami/zookeeper:3.6.2

docker pull apache/dolphinscheduler-tools:3.1.8

docker pull apache/dolphinscheduler-api:3.1.8

docker pull apache/dolphinscheduler-alert-server:3.1.8

docker pull apache/dolphinscheduler-master:3.1.8

docker pull apache/dolphinscheduler-worker:3.1.8

5. 本地启动dolphinscheduler服务

6. 进入登录界面:

7. 数据账号密码登录 admin/dolphinscheduler

安装遇到的问题:

1. 从可用把镜像导入到本地主机之后,没有执行schema纲要,这一步,直接执行了all up这一步,alert和master的容器起不来,api的容器会unhealthy,所以登录界面打不开。

2. 在处理第一个问题之前,我以为是基础镜像没有导入过来的原因,所以先把基础镜像导入到本地机器的本地镜像仓库了。没有执行schema这一步,执行第三步all up,服务还是起不来。

3. 在处理前两个问题之前,我以为是4核8g的规格配置不够,所以升级成8核16g了。但是服务还是起不来。(后面变更为4核8g之后,服务还是能访问,ds的web页面可以打开,说明不是规格的问题)

4. 总之,核心原因是第一个,没有执行schema up,直接执行 all up。ds本身的镜像不知道需要不需要,理论上应该需要,但是这两个yaml文件里面都没提,所以暂时不能确定是需要还是不需要。从实际角度来讲,多一个基础镜像,即使不需要,应该也是没问题的。

api 为用户提供UI接口调用的服务

master 负责整个工作流调度

worker 具体执行工作流任务的workerflow

alert 工作流的异常和失败进行告警

租户tenant 对应的是linux用户,是worker提交作业,所使用的用户,如果linux没有这个用户,worker会在执行脚本的时候,创建这个用户

项目里面创建工作流,工作流里面创建任务

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/14453.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Transformer-BiLSTM、Transformer、CNN-BiLSTM、BiLSTM、CNN五模型多变量回归预测

Transformer-BiLSTM、Transformer、CNN-BiLSTM、BiLSTM、CNN五模型多变量回归预测 目录 Transformer-BiLSTM、Transformer、CNN-BiLSTM、BiLSTM、CNN五模型多变量回归预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 吐血售!聚划算!Transforme…

【C++】C++11特性(上)

✨✨欢迎大家来到Celia的博客✨✨ 🎉🎉创作不易,请点赞关注,多多支持哦🎉🎉 所属专栏:C 个人主页:Celias blog~ 目录 一、列表初始化 二、std::initializer_list 三、右值引用和移…

Maven 构建项目

Maven 是一个项目管理和构建工具,主要用于 Java 项目。它简化了项目的构建、依赖管理、报告生成、发布等一系列工作。 构建自动化:Maven 提供了一套标准化的构建生命周期,包括编译、测试、打包、部署等步骤,通过简单的命令就可以执…

在jquery里,使用$.each()函数循环数组,对象,dom的用法

介绍 $.each() 能遍历一维数组,多维数组,JSON对象,dom2元素。在开发中可以很高效的处理各种数据结构。前提,需要导入jquery 使用 遍历JSON对象 var objDemo {name: linda,age:12, desc: a girl};$.each(objDemo,function(i,va…

UniApp 应用、页面与组件的生命周期详解

UniApp 应用、页面与组件的生命周期详解 在uni-app中包含了 应用生命周期、页面生命周期、和组件生命周期&#xff08; Vue.js的&#xff09;函数。 应用生命周期 应用生命周期仅可在App.vue中监听&#xff0c;在其它页面监听无效。 <script>export default {onLaunc…

进程的创建/终止/等待/替换

目录 一、进程创建 &#xff08;一&#xff09;fork函数的概念 &#xff08;二&#xff09;fork函数示例 二、进程终止 &#xff08;一&#xff09;退出码的概念 &#xff08;二&#xff09;退出码的含义 &#xff08;三&#xff09;相关函数和指令 三、进程等待 &…

【c++丨STL】list的使用

&#x1f31f;&#x1f31f;作者主页&#xff1a;ephemerals__ &#x1f31f;&#x1f31f;所属专栏&#xff1a;C、STL 目录 前言 list简介 一、list的默认成员函数 构造函数(constructor) 析构函数 赋值重载 二、list的迭代器接口 迭代器的功能分类 三、list的容量…

CANoe导入CAN DataBase(DBC文件)

Canoe是一款用于汽车网络仿真和开发的工具&#xff0c;它支持导入DBC文件&#xff08;CAN Database文件&#xff09;以定义和配置CAN网络中的消息、信号和节点。 将DBC文件拷贝至我们的工程目录的DBC文件夹内&#xff0c;随后在Simulation Setup中右击DataBase&#xff0c;进…

nacos配置管理

1、增加依赖 <!--配置管理的依赖 --> <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId><version>2.1.0.RELEASE</version> </dependency><de…

每日OJ题_牛客_奇数位丢弃_找规律/模拟_C++_Java

目录 牛客_奇数位丢弃_找规律/模拟 题目解析 C代码1模拟 C代码2找规律 Java代码找规律 牛客_奇数位丢弃_找规律/模拟 奇数位丢弃_牛客题霸_牛客网 描述&#xff1a; 对于一个由 0..n 的所有数按升序组成的序列&#xff0c;我们要进行一些筛选&#xff0c;每次我们丢弃去…

解决table下tr或td选中不生效的问题

目录 一、问题描述 1.首先我们来看一下代码结构 2.检查代码&#xff08;鼠标右键或按下F12&#xff09; 3.解决方案 一、问题描述 解决table下tr或td选中不生效&#xff0c;页面刷新无效果 1.首先我们来看一下代码结构 这里我们的结构是table标签下的tr&#xff0c;tr当…

学籍拍照助手,中小学新生学籍证件照电脑端拍照教程

新学期过半&#xff0c;许多中小学学籍管理员都忙碌起来&#xff0c;为孩子们准备学籍所需的证件照。传统的照相馆拍摄、向家长收集都存在一些弊端&#xff0c;下面就来介绍如何使用校园学籍拍照助手&#xff0c;更智能的完成学籍证件照的拍摄。 1. 准备工作在开始之前&#xf…

SE30 程序运行时间评估

日常执行报表的时候 可能会遇到报表反应时间太长 用户无法接受的情况&#xff0c;此时 作为IT同事 需要分析程序的运行时间&#xff0c;可以使用SAP标准事务码SE30. 1、选择运行时分析-测量-立即执行&#xff08;有些程序可能没有此按钮 需联系开发增加&#xff09; 2、以发…

T-Rex Label标注

这个是做大量数据集的时候用到的&#xff0c;但我觉得他比labelimg好用。 仙人指路✈trexlabel 基本标注 如果是从新开始的话就是 导入图片然后进行直接标注 如果是后期添加图片继续标注&#xff0c;选择你需要的数据集格式&#xff0c;导入即可。 如此&#xff0c;进去就…

部署zabbix遇到问题: cannot find a valid baseurl for repo:centos-sclo-rh/x86 64 怎么解决 ?

安装 Zabbix 前端包&#xff0c;提示cannot find a valid baseurl for repo&#xff1a;centos-sclo-rh/x86 64 安装zabbix前端包 # yum install zabbix-web-mysql-scl zabbix-apache-conf-scl 解决办法&#xff1a; 原因是&#xff1a;CentOS7的SCL源在2024年6月30日停止维护…

小程序+公众号统一账号unionid,实现pc+公众号+小程序统一身份

一、微信开放平台 注册开发者账号、绑定公众号、小程序 二、小程序端获取unionid 1获取code wx.login({success: res > {console.log("getCode", res.code)this.getOpenId(res.code)}}) 2通过code调用后台方法获取openid,unionid 小程序端 getOpenId: functi…

LeetCode【0037】解数独

本文目录 1 中文题目2 求解方法&#xff1a;递归回溯法2.1 方法思路2.2 Python代码2.3 复杂度分析 3 题目总结 1 中文题目 编写一个程序&#xff0c;通过填充空格来解决数独问题。数独的解法需 遵循如下规则&#xff1a; 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只…

零碎02-接口文档管理

目录 一、背景故事 二、解决方案分析 1. 静态文档方案 2. Swagger Springfox 3. Knife4j增强方案 三、示例 1. 添加依赖 2. 配置Knife4j 3. 创建knife4j配置类 4. 启动Spring Boot项目并访问接口文档 5. 使用示例 6. 测试和使用 四、总结 一、背景故事 酷乐是一名…

指标体系构建:如何设计北极星指标设计?

目录 1 北极星指标的作用 2 北极星指标设计标准 标准1 标准2 标准3 标准4 标准5 标准6 3 小结 1 北极星指标的作用 北极星指标是公司业务成功的关键指标&#xff0c;反映了公司为用户带来的价值&#xff0c;有以下3点作用&#xff1a; ● 像北极星一样&#xff0c…

三菱FX5UPLC以太网Socket通信功能Passive开放的程序示例

Passive开放的通信流程如下所示。 参数设置 示例程序中使用的参数设置如下所示。 [CPU模块】 导航窗口↔[参数]↔[模块型号]↔[模块参数]-[以太网端口]-[基本设置]-[对象设备连接配置设置]↔[详细设置]→[以太网配置(内置以太网端口)]画面 【以太网模块】 [导航]中「参数]→[模…