zoukankan      html  css  js  c++  java
  • 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、登录界面

    azkaban-001

    azkaban-002

    6、创建工程

    6.1 点击创建项目按钮

    azkaban-003

    6.2 输入项目信息

    azkaban-004

    6.3 查看创建项目

    azkaban-005

    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文件,如下图所示:

    azkaban-006

    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文件内容如下

    azkaban-009

    9、上传zip文件

    9.1 点击上传按钮

    azkaban-007

    9.2 选中zip文件

    azkaban-008

    9.3 查看上传结果

    azkaban-010

    9.4 展开job,查看依赖关系

    azkaban-011

    10、job的执行与调度

    job在上传之后,可以单独执行某个job,带依赖关系也可以不带依赖关系。执行通常用来测试,测试通过后就可以进行调度作业。

    10.1 job执行

    10.1.1 展开job的依赖列表

    azkaban-012

    azkaban-013

    10.1.2 执行无依赖job

    azkaban-014

    azkaban-015

    10.1.3 执行有依赖job

    azkaban-016

    azkaban-017

    10.1.4 执行无依赖job
  • 相关阅读:
    SQL语句集(转)
    Oracle 数据库 for update / for update nowait 的区别
    XML 关键字
    JAVA 操作 DBF 文件数据库
    Hibernate 懒加载和 Json 序列化冲突
    MYSQL 语法大全自己总结的
    php-laravel中间件使用
    php-表单验证
    php-laravel安装与使用
    iOS 关于权限设置的问题
  • 原文地址:https://www.cnblogs.com/xupccc/p/9545703.html
Copyright © 2011-2022 走看看