AzkabanAzkaban使用实战
1.shell command调度
- 创建job描述文件
vi command.job
#command.job
type=command
command=echo 'hello'
- 将job资源文件打包成zip文件
zip command.job - 通过azkaban的web管理平台创建project并上传job压缩包
首先创建Project
- 上传zip包
- 启动执行该job
2.job依赖调度
- 创建有依赖关系的多个job描述
第一个job:foo.job
# 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
3.HDFS任务调度
- 创建job描述文件
# fs.job
type=command
command=/home/hadoop/apps/hadoop-2.6.1/bin/hadoop fs -mkdir /azaz
- 将job资源文件打包成zip文件
- 通过azkaban的web管理平台创建project并上传job压缩包
- 启动执行该job
4.MAPREDUCE任务调度
mr任务依然可以使用command的job类型来执行
- 创建job描述文件,及mr程序jar包(示例中直接使用hadoop自带的example jar)
# mrwc.job
type=command
command=/home/hadoop/apps/hadoop-2.6.1/bin/hadoop jar hadoop-mapreduce-examples-2.6.1.jar wordcount /wordcount/input /wordcount/azout
- 将所有job资源文件打到一个zip包中
- 在azkaban的web管理界面创建工程并上传zip包
- 启动job
5.HIVE脚本任务调度
- 创建job描述文件和hive脚本
Hive脚本: test.sql
use default;drop table aztest;create table aztest(id int,name string) row format delimited fields terminated by ',';load data inpath '/aztest/hiveinput' into table aztest;create table azres as select * from aztest;insert overwrite directory '/aztest/hiveoutput' select count(1) from aztest;
- Job描述文件:hivef.job
# hivef.job
type=command
command=/home/hadoop/apps/hive/bin/hive -f 'test.sql'
- 将所有job资源文件打到一个zip包中创建工程并上传zip包,启动job
6.定时任务调度
除了手动立即执行工作流任务外,azkaban也支持配置定时任务调度。开启方式如下:
首页选择待处理的project
上述图片中,选择左边schedule表示配置定时调度信息,选择右边execute表示立即执行工作流任务。
发布评论