|NO.Z.00035|——————————|^^ 部署 ^^|——|Hadoop&azkaban.V07|——|azkaban.v07|实验实例|
一、shell command调度
### --- [azkaban]
~~~ [azkaban应用之Job依赖调度]
~~~ [azkaban应用之HDFS任务]
~~~ [azkaban应用之mapreduce任务]
~~~ [azkaban应用之mapreduce任务]
~~~ [azkaban应用之Hive脚本任务]
~~~ [azkaban应用之后任务调度执行]
### --- 创建job描述文件
command.job
type=command
command=echo 'hello'
### --- 将job资源文件打包成zip文件
zip command.job

### --- 通过azkaban的web管理平台创建project并上传job压缩包
~~~ 首先创建Project并上传压缩包
~~~ 启动执行该job


二、job依赖调度
### --- 创建有依赖关系的多个job描述
~~~ 第一个job:foo.jo
foo.job
type=command
command=echo 'foo'
### --- 第二个job:bar.job依赖foo.job
bar.job
type=command
dependencies=foo
command=echo 'bar'
### --- 将所有job资源文件打到一个zip包中
~~~ 在azkaban的web管理界面创建工程并上传zip包启动工作流flow


三、HDFS任务调度
### --- 创建job描述文件
fs.job
type=command
command=/opt/yanqi/servers/hadoop-2.9.2/bin/hadoop fs -mkdir /azkaban
### --- 将job资源文件打包成zip文件
~~~ 通过azkaban的web管理平台创建project并上传job压缩包
~~~ 启动执行该job


四、MAPREDUCE任务调度
### --- mr任务依然可以使用command的job类型来执行创建job描述文件,
~~~ 及mr程序jar包(示例中直接使用hadoop自带的example jar)
mrwc.job
type=command
command=/opt/yanqi/servers/hadoop-2.9.2/bin/hadoop jar hadoop-mapreduce-examples-2.9.2.jar wordcount /wordcount/input /wordcount/azout
~~~ # jar包地址
[root@linux121 ~]# ll /opt/yanqi/servers/hadoop-2.9.2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.9.2.jar
-rw-r--r-- 1 root root 303323 Nov 13 2018 /opt/yanqi/servers/hadoop-2.9.2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.9.2.jar
[root@linux123 ~]# hdfs dfs -mkdir /wordcount
[root@linux123 ~]# hdfs dfs -mkdir /wordcount/input
[root@linux123 ~]# hdfs dfs -mkdir /wordcount/output
### --- 将所有job资源文件打到一个zip包中
~~~ 在azkaban的web管理界面创建工程并上传zip包启动job
~~~ 执行结果查看


五、HIVE脚本任务调度
### --- 创建job描述文件和hive脚本
~~~ # Hive脚本: test.sql
use default;
drop table aztest;
create table aztest(id int,name string) row format delimited fields terminated by ',';
### --- Job描述文件:hive.job
### --- hive.job
type=command
command=/opt/yanqi/servers/hive-2.3.7/bin/hive -f 'test.sql'
### --- 将所有job资源文件打到一个zip包中创建工程并上传zip包,
### --- 创建并启动job

六、定时任务调度
### --- 定时任务调度
~~~ 除了手动立即执行工作流任务外,azkaban也支持配置定时任务调度。开启方式如下:
~~~ 首页选择待处理project选择左边schedule表示配置
~~~ 定时调度信息选择右边execute表示立即执行工作流任务。

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
浙公网安备 33010602011771号