Azkaban的囚徒——Azkaban运行模式和流

文章目录

  • Azkaban运行模式
  • Azkaban运行
    • Azkaban 流
    • Job Dependency

Azkaban运行模式

在3.x版本里,提供了3种运行模式

  • the stand alone “solo-server” mode standalone模式
  • the heavier weight two server mode 两个server的模式
  • distributed multiple-executor mode 分布式(多个executor的模式)

solo server mode
采用的DB是H2,而web server和executor server都在同一个进程中运行。
应用于小规模的用例。
two server mode
应用于生产环境,采用的DB是MySQL,master-slave模式。
web server和executor server在不同的进程中运行,因此升级和维护不会影响用户。
multiple executor mode
应用于生产环境(分布式),采用的DB是MySQL,master-slave模式。
web server和executor server在不同的主机上运行,因此升级和维护不应该影响用户。
该模式为Azkaban带来了健壮和可伸缩的性能。

上一节我们已经介绍过了 solo server mode,在此不做介绍。

集群部署详见https://blog.csdn.net/huohuotu/article/details/77487007

Azkaban运行

首先登陆8081端口的页面,然后创建项目(create project 右上角)。
Azkaban的囚徒——Azkaban运行模式和流_第1张图片
创建完成后,进入项目如下所示:
Azkaban的囚徒——Azkaban运行模式和流_第2张图片
右上角有个upload,需要上传azkaban的流,流的写法如下。

Azkaban 流

流有两种写法。


  • .flow写法:

在文件夹里创建一个叫flow20.project的文件,里面写入:azkaban-flow-version: 2.0
在文件夹里创建一个叫basic.flow的文件,里面写入:

nodes:
  - name: craw
    type: command
    config:
      command: echo "LeesangHyuk No.1."

将这个文件夹打包zip上传到之前的网页运行即可。


  • .job写法

在文件夹里创建一个叫craw.job的文件,里面写入:

type=command
command=echo  "LeesangHyuk No.1."

将这个文件夹打包zip上传到之前的网页运行即可。

上传后,如下图所示
在这里插入图片描述
Permissions可以修改用户权限(其他功能在此不做赘述)。
点击execute flow。
Azkaban的囚徒——Azkaban运行模式和流_第3张图片
然后点击右下角execute即可,运行后,可以查看运行历史。
Azkaban的囚徒——Azkaban运行模式和流_第4张图片

另外Schedule里面可以设置定时运行,设置方法与crontab一样。

Job Dependency


  • .flow版本
nodes:
  - name: jobC
    type: noop
    # jobC depends on jobA and jobB
    dependsOn:
      - jobA
      - jobB

  - name: jobA
    type: command
    config:
      command: echo "This is an echoed text."

  - name: jobB
    type: command
    config:
      command: pwd

  • .job版本

需要创建多个job文件,并且dependencies的名字和xxx.job的名字相同

type=command
#需要配置好hadoop命令,建议编写到shell中,可以后期维护
command=hadoop fs -put /data/*
#多个依赖用逗号隔开
dependencies=o2o_get_file_ftp1,o2o_get_file_ftp2

你可能感兴趣的:(大数据基础,分布式架构)