李林超博客
首页
归档
留言
友链
动态
关于
归档
留言
友链
动态
关于
首页
大数据
正文
06.Azkaban之JavaProcess任务类型
Leefs
2022-04-24 PM
3078℃
0条
[TOC] ### 前言 本篇将以一个简单的案例演示通过Azkaban平台来调度执行Java程序。 ### 一、Azkaban调度类型介绍 `azkaban` 可以支持非常多的任务类型,常用的任务类型有如下几种: + **Command**:使用Linux shell命令行任务。 + **HadoopShell**:这和Command一样也是命令类型,只不过可以和Hadoop集群通信。 + **Java**:调度执行Java任务。 + **hadoopJava**:也是一种Java类型,可以和hadoop集群通信,可以通过运行hadoopJava作业来创建大多数Hadoop作业类型,例如Pig,Hive等。 + **Pig**:pig脚本任务。 + **Hive**:支持 执行hiveSQL 任务。 **官网中对各个类型的详细配置说明地址**:http://xiaoshuai.github.io/azkaban-gh-pages/#new-hive-type ### 二、JavaProcess任务类型介绍 **java和javaprocess作业类型之间的主要区别**: + javaprocess运行具有”main“方法的用户程序,java 运行 Azkaban 提供的调用用户程序“run”方法的 main 方法。 + Azkaban 可以进行设置,例如获取 Kerberos 票证或在提供的主要java类型中请求 Hadoop 令牌,而javaprocess用户负责一切。 说明:`java` 在之前azkaban的版本中,是`azkaban`内置的,在`2.0`版本后就不再是内置的了,而`javaprocess`依旧是内置的。 **配置** **JavaProcess类型可以运行一个自定义主类方法,type 类型为javaprocess,可用配置为:** - **Xms**: 最小堆 - **Xmx**: 最大堆 - **classpath**: 类路径 - **java.class**: 要运行的Java对象,其中必须包含Main方法 - **main.args**: main方法的参数 ### 三、JavaProcess任务调度案例 #### Java程序 **(1)创建一个Maven项目,编写Java程序** ```java package com.lilinchao.function; /** * @author lilinchao * @date 2022/4/24 **/ public class AzkabanFuncation { public static void main(String[] args) { System.out.println("Hello world!"); } } ``` **(2)将项目打成Jar包**  #### Azkaban配置 **(1)新建一个工程说明文件`javaprocess.project`** ```properties azkaban-flow-version: 2.0 ``` **(2)新建javaprocess.flow文件,增加如下内容** ```yaml nodes: - name: javajob type: javaprocess config: java.class: com.lilinchao.function.AzkabanFuncation ``` + **name**:job名称,可以任意填; + **type**:需要执行java程序,所以需要指定类型为`javaprocess`; + **job.class**:配置`main方法`的类路径; **(3)将javaprocess.project、javaprocess.flow、JavaProcess-1.0.jar三个文件一起打成一个ZIP压缩包**  **(4)通过Azkaban调度执行**  **(5)查看执行结果**  ### 四、动态传参 如果需要传递参数Azkaban也支持对任务进行动态传参: + **点击进入javajob工程**  + **点击Edit进行编辑**  + **点击Add Row添加参数** 
标签:
Azkaban
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:
https://lilinchao.com/archives/2008.html
上一篇
05.Azkaban失败重试配置与使用
下一篇
07.Azkaban条件工作流介绍
取消回复
评论啦~
提交评论
栏目分类
随笔
2
Java
326
大数据
229
工具
35
其它
25
GO
48
NLP
8
标签云
Docker
数据结构和算法
Golang基础
DataWarehouse
ajax
LeetCode刷题
国产数据库改造
Java阻塞队列
容器深入研究
NIO
Zookeeper
机器学习
排序
Redis
Python
JVM
人工智能
nginx
Spring
线程池
Typora
GET和POST
锁
FastDFS
Kafka
CentOS
Hadoop
Nacos
哈希表
Livy
友情链接
申请
范明明
庄严博客
Mx
陶小桃Blog
虫洞