Azkaban简介及安装部署

Azkaban简介及安装部署


1、概述

Azkaban是由Linkedin公司推出的一个批量工作流任务调度器,用于在一个工作流内以一个特定的顺序运行一组工作和流程。Azkaban使用job配置文件建立任务之间的依赖关系,并提供一个易于使用的web用户界面维护和跟踪你的工作流。 它有三个重要组件:

  • 关系数据库(目前仅支持mysql

  • web管理服务器-AzkabanWebServer

  • 执行服务器-AzkabanExecutorServer
    在这里插入图片描述
    Azkaban使用MySQL来存储它的状态信息,Azkaban Executor ServerAzkaban Web Server均使用到了MySQL数据库。

    AzkabanExecutorServer在如下几个方面使用到了数据库:

    获取project的信息
    执行工作流
    存储工作流运行日志
    如果一个工作流在不同的执行器上运行,它将从DB中获取状态。
    

    AzkabanWebServer在如下几个方面使用到了数据库:

    Project管理
    跟踪工作流执行进度
    访问历史工作流的运行信息
    定时执行工作流任务
    记录所有sla规则
    

AzkabanWebserver是整个Azkaban工作流系统的主要管理者,它负责project管理、用户登录认证、定时执行工作流、跟踪工作流执 行进度等一系列任务。
同时,它还提供Web服务操作的接口,利用该接口,用户可以使用curl或其他ajax的方式,来执行azkaban的相关操作。
操作包括:用户登录、创建project、上传workflow、执行workflow、查询workflow的执行进度、杀掉workflow等一系列操作,且这些操作的返回结果均是json的格式。

AzkabanExecutorServer作为执行者得角色,负责具体执行的executor会解析job文件。将AzkabanWebServerAzkabanExecutorServer分开,主要是因为在某个任务流失败后,可以更方便的将重新执行。而且也更有利于Azkaban系统的升级。

2、安装

2.1、准备工作

(1)从源代码构建
Azkaban构建使用Gradle(使用Gradle包装器gradlew运行时自动下载),并且需要Java 8或更高版本。
下面的命令上运行*如Linux,OS X. nix平台

 Build Azkaban./gradlew build
 
 Clean the build./gradlew clean
 
 Build and install distributions./gradlew installDist
 
 Run tests./gradlew test
 
 Build without running tests./gradlew build -x test

找到需要文件
在这里插入图片描述
(2)准备mysql数据库环境

2.2.配置安装

解压重命名

	tar -zxvf azkaban-web-server-0.1.0-SNAPSHOT.tar.gz
	tar -zxvf azkaban-exec-server-0.1.0-SNAPSHOT.tar.gz
	tar -zxvf azkaban-db-0.1.0-SNAPSHOT.tar.gz
	mv azkaban-web-server-0.1.0-SNAPSHOT azkaban-web-server
	mv azkaban-exec-server-0.1.0-SNAPSHOT azkaban-exec-server
2.2.1.创建Azkaban元数据库
mysql> create database azkaban;
Query OK, 1 row affected (0.00 sec)
mysql> use azkaban_matadata;
Database changed
mysql>/home/hadoop/app/azkaban/azkaban-db/create-all-sql-0.1.0-SNAPSHOT.sql (会创建所有表)
2.2.2.azkaban web服务器安装

配置 azkaban-web-server/conf/azkaban.properties 文件
在这里插入图片描述
web.resource.dir=/usr/local/azkaban/azkaban-web-server/web/ (建议绝对路径)
在这里插入图片描述在这里插入图片描述

添加MySQL驱动在azkaban-web目录下创建文件夹: mkdir extlib
将mysql驱动jar放入到extlib目录下;

添加管理员用户以及密码 : azkaban-web-server/conf/azkaban-users.xml

<user username="admin" password="admin" roles="admin,metrics"/>
2.2.3.azkaban 执行服器安装

修改/azkaban-exec-server/conf/azkaban.properties 文件
在这里插入图片描述

2.3.部署启动

2.3.1.启动执行器
cd azkaban-exec-server/bin
./start-exec.sh
2.3.2.启动web服务器
cd azkaban-web-server/bin
./start-web.sh
2.3.3.激活execute
curl http://node5:12321/executor?action=activate

结果为 {“status”:“success”} 表示成功

访问web界面:http://IP:端口号/
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值