文章目录
启动Azkaban
使开始的程序在后台运行
- 启动Azkaban Web 服务器
[yao@master azkaban-web-2.5.0]$ nohup bin/azkaban-web-start.sh> log.log 2>&1 &
[1] 22591
- 启动 Azkaban executor 执行服务器
[yao@master azkaban-executor-2.5.0]$ nohup bin/azkaban-executor-start.sh> log.log 2>&1 &
[1] 22638
一、Command 类型
1.1 单一 job 示例
- 创建 job 描述文件
[yao@master data]$ vim command.job
输入以下内容:
#command.job
type=command
command=echo 'hello'
- 将 job 资源文件打成 zip 包
[yao@master data]$ zip command.zip command.job
adding: command.job (deflated 19%)
3. 复制到 windows 本地
[yao@master data]$ sz command.zip
把其放到E:\study2019\20190327-Azkaban下:
- 通过 Azkaban 的 Web 管理平台创建 project 并上传 job 压缩包
(1)创建 project
(2)上传 zip
启动 job:
执行成功:
查看结果:
1.2 多 job 工作流 flow
1.创建有依赖关系的 job 描述文件
第一个job:stepone.job
[yao@master data]$ vim stepone.job
输入以下内容:
#stepone.job
type=command
command=echo'stephone'
第二个job:steptwo.job依赖stepone.job
#steptwo.job
type=command
dependencies=stepone
command=echo 'steptwo'
2.将所有的资源打成一个zip包
[yao@master data]$ zip dependencies.zip stepone.job steptwo.job
adding: stepone.job (deflated 18%)
adding: steptwo.job (deflated 14%)
3. 复制到 windows 本地
[yao@master data]$ sz dependencies.zip
我把其放到E:\study2019\20190327-Azkaban下:
4. 创建 project 并上传 job 压缩包
5.查看结果
stepone执行结果:
steptwo执行结果:
二、操作 HDFS 任务
- 创建 job 描述文件
[yao@master data]$ vim hdfs.job
//添加内容
#hdfs.job
type=command
command=hadoop fs ‐mkdir ‐p /azkaban/hdfs
- 将 job 资源文件打成 zip 包
[yao@master data]$ zip hdfs.zip hdfs.job
adding: hdfs.job (deflated 9%)
-
复制到 windows 本地
-
创建 project 并上传 job 压缩包
执行结果:
HDFS验证:
三、操作 MapReduce 任务
1.创建 job 描述文件
yao@master data]$ vim mapreduce.job
//添加内容
#mapreduce.job
type=command
command=hadoop jar /home/yao/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar pi 5 5
2.将 job 资源文件打成 zip 包
[yao@master data]$ zip mapreduce.zip mapreduce.job
adding: mapreduce.job (deflated 31%)
3.复制到 windows 本地
[yao@master data]$ sz mapreduce.zip
4.创建 project 并上传 job 压缩包
执行结果:
四、操作 Hive 脚本任务
1.创建 Hive 脚本
[yao@master data]$ vim hive.sql
[yao@master data]$ cat hive.sql
drop database if exists azhive cascade;
create database azhive;
use azhive;
create table if not exists student(id int,name string,age int)
row format delimited fields terminated by '\t'
stored as textfile;
load data local inpath '/home/yao/data/student1.txt' overwrite into table student;
select * from student;
2.创建 job 描述文件
[yao@master data]$ cat hivef.job
#hivef.job
type=command
command=hive -f '/home/yao/data/hive.sql'
3.将 job 资源文件打成 zip 包
[yao@master data]$ zip hivef.zip hivef.job
adding: hivef.job (deflated 12%)
4.student.txt内容
[yao@master data]$ cat student1.txt
1001 shiny 23
1002 cendy 22
1003 angel 23
1009 ella 21
1012 eva 24
5.复制到 windows 本地
[yao@master data]$ sz hivef.zip
6.创建 project 并上传 job 压缩包
执行结果:
hive> show databases;
OK
azhive
day0325
default
hw
product
tmall
yr
yr_0322
yr_1
yr_test
Time taken: 6.967 seconds, Fetched: 10 row(s)
hive> use azhive;
OK
Time taken: 1.049 seconds
hive> select * from student;
OK
1001 shiny 23
1002 cendy 22
1003 angel 23
1009 ella 21
1012 eva 24
Time taken: 5.562 seconds, Fetched: 5 row(s)
五、设置调度时间
1.创建project 并上传 job 压缩包
2.设置调度时间
3.查看
可以发现其是在我们设定的时间2019-03-27 16:15 执行的。