azkaban调度
azkaban调度
1、概述
azkaban是一套调度系统,常用大数据作业调度。azkaban包括web和executor两套程序,web主要完成展示和交互,executor上完成调度和作业提交执行。
2、安装
略
3、启动
3.1 启动web程序
$>/soft/azkaban/web/bin/azkaban-web-start.sh
3.2 执行executor程序
$>/soft/azkaban-exec/bin/azkaban-executor-start.sh
4、登录webui
http://s101:8081
5、登录界面


6、创建工程
6.1 点击创建项目按钮

6.2 输入项目信息

6.3 查看创建项目

7、创建job文件和依赖关系
7.1 编写job文件
job文件以job作为扩展名,job中涉及的sh脚本需要保证在executor节点上存在,实际执行时都是由executor在本机上执行特定的shell脚本。
7.1.1 加载数据到原生表job
[1_load_data_to_hive_raw_logs.job],该job是第一个job,没有依赖。
type=command
command=sh /home/centos/umeng/load_data_to_hive_raw_logs.sh
7.1.2 叉分startuplogs并转储job
[2_1_fork_startuplogs.job]
type=command
command=sh /home/centos/umeng/fork_logs.sh fork_startuplogs.sql forkstartuplogs
dependencies=1_load_data_to_hive_raw_logs
7.1.3 叉分eventlogs并转储job
[2_2_fork_eventlogs.job]
type=command
command=sh /home/centos/umeng/fork_logs.sh fork_eventlogs.sql forkeventlogs
dependencies=1_load_data_to_hive_raw_logs
7.1.4 叉分errorlogs并转储job
[2_3_fork_errorlogs.job]
type=command
command=sh /home/centos/umeng/fork_logs.sh fork_errorlogs.sql forkerrorlogs
dependencies=1_load_data_to_hive_raw_logs
7.1.5 叉分usagelogs并转储
[2_4_fork_usagelogs.job]
type=command
command=sh /home/centos/umeng/fork_logs.sh fork_usagelogs.sql forkusagelogs
dependencies=1_load_data_to_hive_raw_logs
7.1.6 job 叉分pagelogs并转储job
[2_5_fork_pagelogs.job]
type=command
command=sh /home/centos/umeng/fork_logs.sh fork_pagelogs.sql forkpagelogs
dependencies=1_load_data_to_hive_raw_logs
7.1.7 编写收尾job
job之间可以指定依赖,多个依赖使用,分割。
[3_end.job]
type=noop
dependencies=2_1_fork_startuplogs,2_2_fork_eventlogs,2_3_fork_errorlogs,2_4_fork_usagelogs,2_5_fork_pagelogs
7.1.8 总结
以上共生成7个job文件,如下图所示:

8、将所有job打成一个zip文件
8.1 安装zip命令
centos 7默认没有集成zip命令,需要单独安装。
#安装zip命令
$>sudo yum install -y zip
8.2 打包job文件到一个zip中
$>cd /home/centos/umeng/job
#将当前所有文件打成1.zip文件
$>zip 1.zip *
8.3 1.zip文件内容如下

9、上传zip文件
9.1 点击上传按钮

9.2 选中zip文件

9.3 查看上传结果

9.4 展开job,查看依赖关系

10、job的执行与调度
job在上传之后,可以单独执行某个job,带依赖关系也可以不带依赖关系。执行通常用来测试,测试通过后就可以进行调度作业。
10.1 job执行
10.1.1 展开job的依赖列表


10.1.2 执行无依赖job


10.1.3 执行有依赖job


10.1.4 执行无依赖job
azkaban调度的更多相关文章
- 第2节 azkaban调度:16、azkaban的介绍以及azkaban的soloserver的安装使用
2. 工作流调度器azkaban 2.1 概述 azkaban官网: https://azkaban.github.io/ 2.1.1为什么需要工作流调度系统 l 一个完整的数据分析系统通常都是由大 ...
- 第2节 azkaban调度:1、azkaban的调度任务使用
2.4 Azkaban实战 Azkaba内置的任务类型支持command.java Command类型单一job示例 创建job描述文件 创建文本文件,更改名称为mycommand.job 注意后缀. ...
- Azkaban调度器
Azkaban介绍 Azkaban 是由 Linkedin 公司推出的一个批量工作流任务调度器,用于在一个工作流内以一个特定的顺序运行一组工作和流程.Azkaban 使用 job 配置文件建立任务之间 ...
- 第2节 azkaban调度:17、azkaban的两个服务模式的安装
2.3.3.azkaban两个服务模式安装 1.确认所需软件: Azkaban Web服务安装包 azkaban-web-server-0.1.0-SNAPSHOT.tar.gz Azkaban执行服 ...
- 24.Azkaban调度脚本的编写
启动azkaban 在启动了server和excutor之后,在浏览器打开azkaban,会发现不能打开,日志报这个错误 at sun.security.ssl.InputRecord.handleU ...
- Azkaban时区问题导致调度差1天
设置了Azkaban调度是每日凌晨一次,如下: 但是调度历史上显示最近一次调度时间是 初步怀疑是因为时区问题导致,查看服务器时区如下 cat /etc/timezone 为Asia/Shanghai. ...
- 从源码看Azkaban作业流下发过程
上一篇零散地罗列了看源码时记录的一些类的信息,这篇完整介绍一个作业流在Azkaban中的执行过程,希望可以帮助刚刚接手Azkaban相关工作的开发.测试. 一.Azkaban简介 Azkaban作为开 ...
- 分布式计算(三)Azkaban介绍
转载自:Azkaban学习之路 (一)Azkaban的基础介绍 目录 一.为什么需要工作流调度器 二.工作流调度实现方式 三.常见工作流调度系统 四.各种调度工具对比 五.Azkaban 与 Oozi ...
- Azkaban学习之路 (一)Azkaban的基础介绍
一.为什么需要工作流调度器 1.一个完整的数据分析系统通常都是由大量任务单元组成: shell 脚本程序,java 程序,mapreduce 程序.hive 脚本等 2.各任务单元之间存在时间先后及前 ...
随机推荐
- Ruby truthy and falsey
在Ruby里只有false 和nil表示falsey link: https://gist.github.com/jfarmer/2647362
- poj1840 五项式等于0(哈希)
题目传送门 题意很好懂,注意一下xi不能等于0 思路:智商检测题,一开始想着五重for暴力...Orz,后来移向(把a4a5移到右边)了发现减了1e8数量级的复杂度,再次Orz,所以直接三重循环,记录 ...
- Codeforces Round #347 (Div. 2) A
Description Greatest common divisor GCD(a, b) of two positive integers a and b is equal to the bigge ...
- 及时从数据库中取得数据填放进Form表单的多选框中
#写上以下代码就不用担心数据库添加了数据而不能及时获取了 def __init__(self, *args, **kwargs): #每次创建Form1对象时执行init方法 super(Form1, ...
- 1.2 rust cargo
cargo是rust的编译与打包工具,可将rust打包成为一个可执行性文件.生成的可执行性文件不能跨系统的大版本,比如在linux7上打包,那么程序无法在linux6上执行. # cargo new ...
- 8php字符串的方法
<?php/** * Created by PhpStorm. * User: DY040 * Date: 2017/9/8 * Time: 16:46 *//*php也有转义字符/*///ec ...
- Hbase 表操作
1. list 操作 2. 创建table column family, 3. 插入数据: put 'user' 3. 检索数据: scan table
- ubuntu 启动 ssh 服务
$ sudo service ssh start $ sudo /etc/init.d/ssh start 重启 $ sudo /etc/init.d/ssh restart $ sudo servi ...
- 正确理解ThreadLocal:ThreadLocal中的值并不一定是完全隔离的
首先再讨论题主的这个观点之前我们要明确一下ThreadLocal的用途是什么? ThreadLocal并不是用来解决共享对象的多线程访问问题. 看了许多有关ThreadLocal的博客,看完之后会给人 ...
- 加解密---Java安全
一.概述 1.JCA(Java Cryptography Architecture) 提供基本的加密框架(消息摘要.数字签名......) 2.JCE(Java Cryptography Extens ...