Azkaban 3.0 安装 - 单机模式

Azkaban是由Linkedin开源的一个批量工作流任务调度器。用于在一个工作流内以一个特定的顺序运行一组工作和流程。Azkaban定义了一种KV文件格式来建立任务之间的依赖关系,并提供一个易于使用的web用户界面维护和跟踪你的工作流。

它有如下功能特点:

  • Web用户界面
  • 方便上传工作流
  • 方便设置任务之间的关系
  • 调度工作流
  • 认证/授权(权限的工作)
  • 能够杀死并重新启动工作流
  • 模块化和可插拔的插件机制
  • 项目工作区
  • 工作流和任务的日志记录和审计

Solo Server 模式是一个 all in one 的部署方式,适合测试环境,有如下优势:

  • 安装简单:不需要 MySQL,使用 H2 作为持久化存储;
  • 启动简单:Web 服务器和 Executor 服务器在同一个进程;
  • 功能齐备:具备所有的功能;

部署流程

Step1. 从 git 上 Clone 仓库

git clone https://github.com/azkaban/azkaban.git

Step2. 部署

cd azkaban; ./gradlew build installDist

下载速度略慢,可以尝试使用代理。

Step3. 添加 HADOOP_HOME

# 如果是 Cloudera 环境,以 5.8.x 为例
export HADOOP_HOME=/opt/cloudera/parcels/CDH-5.8.2-1.cdh5.8.2.p0.3/lib/hadoop

Step4. 启动服务

cd azkaban-solo-server/build/install/azkaban-solo-server; bin/start-solo.sh

Step5. 停止服务

bin/shutdown-solo.sh

一个完整的部署应该具备以下目录:

Folder Description
bin The scripts to start/stop Azkaban jetty server
conf The configuration files for Azkaban solo server
lib The jar dependencies for Azkaban
extlib Additional jars that are added to extlib will be added to Azkaban's classpath
plugins the directory where plugins can be installed
web The web (css, javascript, image) files for Azkaban web server.

conf 目录中,必须存在 3 个文件:

azkaban.private.properties - Runtime 情况下的参数;
azkaban.properties - Runtime 情况下的参数;
global.properties - 全局静态属性,共享给所有 workflow 和 job;
azkaban-users.xml - 授权配置,管理用户和角色之间的映射;如果XmLUserManager 没有配置使用该文件,则默认不启用该文件内的配置;

azkaban.properties 是主配置文件。

Step5. 启用 UserManager

Azkaban 使用 UserManager 组件提供基于用户和角色的权限管理。默认情况下,Azkaban 使用 XmlUserManager ,该 plugin 从 azkaban.properties_azkaban-users.xml_ 获取 username/passwords。

  • user.manager.class=azkaban.user.XmlUserManager
  • user.manager.xml.file=conf/azkaban-users.xml

默认的测试用用户名和密码皆为 azkaban

Step7. 启动 Web Server

azkaban.properties 的以下配置项用于配置 jetty。

jetty.maxThreads=25
jetty.ssl.port=8081

执行 bin/start-solo.sh 启动 Web Server,执行 bin/shutdown-solo.sh 进行停止。

Step8. 通过浏览器确认安装情况

http://localhost:8081/index

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,001评论 19 139
  • 安装azkaban时参考了网上的资料,结果没一篇能安装成功的。调试半天才成功,大部分的问题是资料版本太老,gith...
    天夭夭阅读 4,401评论 2 0
  • Azkaban安装 1 Azkaban介绍 Azkaban是由Linkedin开源的一个批量工作流任务调度器。用于...
    yanzhelee阅读 931评论 0 0
  • 暑假生活开启了,孩子为自己规划了暑假里一天的生活。 孩子说考试的时候不认真,要改正,在做暑假作业的时候特别认真。 ...
    格格li阅读 291评论 0 2
  • 我是90年的,可我一说我也是90后,总是给对方“惊喜”,我长得像80后,心态却是70后,思想保守到跟60后有的一拼...
    斯琴_4ac3阅读 129评论 0 0