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调度的更多相关文章

  1. 第2节 azkaban调度:16、azkaban的介绍以及azkaban的soloserver的安装使用

    2. 工作流调度器azkaban 2.1 概述 azkaban官网: https://azkaban.github.io/ 2.1.1为什么需要工作流调度系统 l  一个完整的数据分析系统通常都是由大 ...

  2. 第2节 azkaban调度:1、azkaban的调度任务使用

    2.4 Azkaban实战 Azkaba内置的任务类型支持command.java Command类型单一job示例 创建job描述文件 创建文本文件,更改名称为mycommand.job 注意后缀. ...

  3. Azkaban调度器

    Azkaban介绍 Azkaban 是由 Linkedin 公司推出的一个批量工作流任务调度器,用于在一个工作流内以一个特定的顺序运行一组工作和流程.Azkaban 使用 job 配置文件建立任务之间 ...

  4. 第2节 azkaban调度:17、azkaban的两个服务模式的安装

    2.3.3.azkaban两个服务模式安装 1.确认所需软件: Azkaban Web服务安装包 azkaban-web-server-0.1.0-SNAPSHOT.tar.gz Azkaban执行服 ...

  5. 24.Azkaban调度脚本的编写

    启动azkaban 在启动了server和excutor之后,在浏览器打开azkaban,会发现不能打开,日志报这个错误 at sun.security.ssl.InputRecord.handleU ...

  6. Azkaban时区问题导致调度差1天

    设置了Azkaban调度是每日凌晨一次,如下: 但是调度历史上显示最近一次调度时间是 初步怀疑是因为时区问题导致,查看服务器时区如下 cat /etc/timezone 为Asia/Shanghai. ...

  7. 从源码看Azkaban作业流下发过程

    上一篇零散地罗列了看源码时记录的一些类的信息,这篇完整介绍一个作业流在Azkaban中的执行过程,希望可以帮助刚刚接手Azkaban相关工作的开发.测试. 一.Azkaban简介 Azkaban作为开 ...

  8. 分布式计算(三)Azkaban介绍

    转载自:Azkaban学习之路 (一)Azkaban的基础介绍 目录 一.为什么需要工作流调度器 二.工作流调度实现方式 三.常见工作流调度系统 四.各种调度工具对比 五.Azkaban 与 Oozi ...

  9. Azkaban学习之路 (一)Azkaban的基础介绍

    一.为什么需要工作流调度器 1.一个完整的数据分析系统通常都是由大量任务单元组成: shell 脚本程序,java 程序,mapreduce 程序.hive 脚本等 2.各任务单元之间存在时间先后及前 ...

随机推荐

  1. sharepoint_study_目录学习笔记(长期更新)

    1. _catalogs/masterpage:这个是SharePoint网站的母版页样式库页面,这里放了网站上所有的母版页(网站设置--Web设计器库--母版页和页面布局). 2.  15\TEMP ...

  2. 使用YARN修改中国镜像

    官网地址 下载安装 https://yarnpkg.com/zh-Hans/   查看仓库使用地址 yarn config set registry 设置为淘宝镜像 yarn config set r ...

  3. mybatis主键是在insert前生成还是之后生成

    oracle sequence 推荐每个表使用自己的sequence mysql 使用每个表的autoincreate来当主键 mybatis 操作insert时 主键的生成是在插入之前 还是之后? ...

  4. 练习六十七:HTML练习

    题目:一个html文件,找出里面的链接 代码: from html.parser import HTMLParser import urllib.request class myhtml(HTMLPa ...

  5. 23-----BBS论坛

    BBS论坛(二十三) 23.添加板块 (1)apps/models class BoardModel(db.Model): __tablename__ = 'board' id = db.Column ...

  6. python学习2(转载)

    一.流程控制之while循环 语法:while 条件: 循环体else: else语句(当条件不成立的时候执行这里 和break没关系) 判断条件是否成立. 如果成立执行循环体.然后再次判断条件,.. ...

  7. Dockerfile的书写规则和指令的使用方法

    Dockfile是一种被Docker程序解释的脚本,Dockerfile由一条一条的指令组成,每条指令对应Linux下面的一条命令.Docker程序将这些Dockerfile指令翻译真正的Linux命 ...

  8. 20181031 temp

    https://wiki.jenkins.io/display/JENKINS/M2+Release+Plugin https://issues.jenkins-ci.org/browse/JENKI ...

  9. (转)linux应用之test命令详细解析

    linux应用之test命令详细解析 原文:https://www.cnblogs.com/tankblog/p/6160808.html test命令用法. 功能:检查文件和比较值 1)判断表达式 ...

  10. C语言测试int型数据的最大值最小值

    #include<stdio.h> int int_min(){    int i=0;    int j=0;    while(i>=j)    {        i=j;    ...