Azkaban简介及安装教程

什么是Azkaban?

Azkaban是一种类似于Oozie的工作流控制引擎,可以用来解决多个Hadoop计算任务之间的依赖关系问题。

Azkaban由以下3个组件构成:

一、MySQL数据库

Azkaban使用MySQL来存储它的状态信息,Azkaban Executor Server和Azkaban Web Server均使用到了MySQL数据库。

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

1、获取project的信息

2、执行工作流

3、存储工作流运行日志

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

1、Project管理

2、跟踪工作流执行进度

3、访问历史工作流的运行信息

4、定时执行工作流任务

二、AzkabanWebServer

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

三、AzkabanExecutorServer

之所以将AzkabanWebServer和AzkabanExecutorServer分开,主要是因为在某个任务流失败后,可以更方便的将重新执行。而且也更有利于Azkaban系统的升级。

两种不同类型的Azkaban

solo server mode:该模式使用H2数据库,且webServer和executorServer运行在同一个进程中,没有单独分开。该模式适用于小规模的使用。

two server mode:该模式使用MySQL数据库,webServer和executorServer运行在不同进程中,该模式适用于大规模应用。

Solo Server Mode安装教程

一、从Azkaban的官网上下载azkaban-solo-server(下载地址:http://azkaban.github.io/downloads.html)。解压后,应包含以下文件夹:

bin 存放着启动Azkaban的jetty服务器的脚本文件

conf 存放Azkaban solo server的配置文件

lib Azkaban所需的jar包

extlib 存放至extlib下的jar包将会被添加至Azkaban的classpath

plugins Azkaban的plugins安装文件夹

Web Azkaban web服务器的文件存放地址,文件如css、javascript、image等

重点介绍下conf文件夹,在该文件夹内,有如下几个文件:

azkaban.private.properties
用于设置Azkaban运行时的一些参数

azkaban.properties
同上

global.properties
该文件用于设置全局静态属性,所有工作流均可访问到这些属性

azkaban-user.xml
azkaban用户信息文件,用于配置azkaban的使用用户及用户组

二、配置SSL的KeyStore(可选操作,如果需要使用azkaban的ajax api,则必须执行该步操作)

1、在azkaban根目录下执行命令(该命令将在根目录下生成SSL所需的keystore文件):keytool -keystore keystore -alias jetty -genkey -keyalg RSA

根据个人配置填写以下参数:

keystore password:azkaban

first and last name:

name of organizational unit:

name of organization:

name of City:

name of province:

two-letter country code for this unit:

key password for <jetty>:azkaban

2、生成keystore文件后,根据实际情况修改conf/azkaban.properties文件里的内容:

jetty.keystore=keystore

jetty.password=azkaban

jetty.keypassword=azkaban

jetty.truststore=keystore

jetty.trustpassword=azkaban

三、启动web服务

在azkaban的根目录下执行bin/azkaban-solo-start.sh 脚本。多说两句:必须使用bin/azkaban-solo-start.sh或绝对路径方式执行脚本,否则会因为相对路径的问题,而导致azkaban无法找到相关配置文件,报错:“cannot find ‘database.properties‘ file in sql/database.properties”。

四、如上成功配置好后,执行命令(前提是安装了curl):curl -k -X POST --data "action=login&username=azkaban&password=azkaban" https://localhost:8043。若无误,则应返回json格式的session.id和status信息

时间: 2024-10-03 16:31:58

Azkaban简介及安装教程的相关文章

中文分词工具简介与安装教程(jieba、nlpir、hanlp、pkuseg、foolnltk、snownlp、thulac)

2.1 jieba 2.1.1 jieba简介 Jieba中文含义结巴,jieba库是目前做的最好的python分词组件.首先它的安装十分便捷,只需要使用pip安装:其次,它不需要另外下载其它的数据包,在这一点上它比其余五款分词工具都要便捷.另外,jieba库支持的文本编码方式为utf-8. Jieba库包含许多功能,如分词.词性标注.自定义词典.关键词提取.基于jieba的关键词提取有两种常用算法,一是TF-IDF算法:二是TextRank算法.基于jieba库的分词,包含三种分词模式: 精准

Node.js 教程 01 - 简介、安装及配置

目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 简单的说 Node.js 就是运行在服务端的 JavaScript. Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台. Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好. 谁适合阅读本教程?

云集微助手安装教程和授权说明

安装教程 一 .手机越狱(如果已经越狱请跳过此步,直接进行第二步) 越狱教程:http://jailbreak.25pp.com/yueyu/ 二 .安装触动精灵(如果你已安装触动精灵最新版请跳过此步,直接进行第三步) 安装教程:http://t.im/m4qb 三 .扫码安装微助手 [1]确保触动精灵已经安装,手机桌面打开触动精灵,按下图操作 [2]扫描下图二维码,安装微助手 [3]授权激活 [4]运行 按手机音量减键(不是加)启动程序 出现软件界面,激活成功! 备注: 激活成功后,不要急着运

Linux(centos)下mysql编译安装教程

Linux下mysql编译安装教程 #查看linux发行版本号 cat /etc/issue #查看linux内核版本 uname -r 本文测试环境centOS6.6 一.Linux下编译安装MySQL前的准备工作 在线安装编译源码所需的工具和库(无法联网的话要事先准备软件,或者系统盘) yum install gcc gcc-c++ ncurses-devel perl 从mysql5.5起源代码编译需要借助cmake这款编译工具.从http://www.cmake.org下载cmake源码

【 D3.js 入门系列 — 0 】 简介和安装

[ D3.js 入门系列 — 0 ] 简介和安装 发表于2014/06/12 近年来,可视化越来越流行,许多报刊杂志.门户网站.新闻.媒体都大量使用可视化技术,使得复杂的数据和文字变得十分容易理解,有一句谚语“一张图片价值于一千个字”,的确是名副其实.各种数据可视化工具也如井喷式地发展,D3 正是其中的佼佼者. 1. D3 是什么 D3 的全称是(Data-Driven Documents),顾名思义可以知道是一个被数据驱动的文档.听名字有点抽象,说简单一点,其实就是一个 JavaScript

Ogre简介及安装配置

Ogre简介及安装配置 关于Ogre Ogre,食人魔,兽人部落曾经的盟友,如今遍布艾泽拉斯和德拉诺.当然,这里说的Ogre不是这些梨形的胖子们,而是“Object-Oriented Graphics Rendering Engine”,面向对象的图形渲染引擎. 由于种种原因,需要用C++来做渲染,我找了很多不同游戏引擎的资料最终选定了Ogre.Ogre并不是一个完整的游戏引擎,他只能够实现图形渲染的功能,但是它能够添加很多插件,让我们开发一个完整的游戏.如果不想深入了解游戏程序开发的话,建议去

NFC学习笔记二——Libnfc简介与安装

一直想把自己对过的英文文章做一下翻译记录下来,趁着学习NFC,现将libnfc首页的对libnfc介绍和在不同操作系统上对libnfc安装的文章做一下翻译,一方面提高一下自己的英语,另一方面学习一下libnfc. 原文地址:http://nfc-tools.org/index.php?title=Libnfc 公共平台独立的近场通讯(NFC)库 libnfc是GNU公共许可正下发布的第一个免费的底层的NFC开发包和编程API.它对任何人事完全免费和公开的.这个列表显示了libnfc支持的功能.l

最新phpstudy2016安装教程及流程

最新phpstudy2016安装教程及流程,帮助站长快速搭建网站服务器平台! phpstudy软件简介 该程序包集成最新的Apache+Nginx+LightTPD+PHP+MySQL+phpMyAdmin+Zend Optimizer+Zend Loader,一次性安装,无须配置即可使用,是非常方便.好用的PHP调试环境.该程序绿色小巧简易迷你仅有32M,有专门的控制面板.总之学习PHP只需一个包. 最新版本,完美支持win10服务器,贿支持自定义php版本.对学习PHP的新手来说,WINDO

Oracle VM + centos7.1+openstack kilo 多结点安装教程---glance的安装

声明:最近在进行openstack的kilo版本的安装,发现现有的网络教程非常少,而且多数教程并不能安装成功,故写此教程.openstack的安装较为复杂,本教程并不能保证在不同环境下也能将其安装成功.个人安装教程,也难免出错.同时,安装是在虚拟机环境下,真实安装环境需要进行更改. 转载请声明出处: 作者:张某人ER 原文链接:http://blog.csdn.net/xinxing__8185/article/details/51235988 第三部分 glance的安装 glance简介 g