Azkaban简介
官网:https://azkaban.github.io/
Azkaban是在LinkedIn上创建的批处理工作流作业调度程序,用于运行Hadoop作业。Azkaban通过作业依赖性解决顺序问题,并提供易于使用的Web用户界面来维护和跟踪您的工作流程。
- 兼容任何版本的Hadoop
- 易于使用的Web UI
- 简单的Web和http工作流上传
- 项目工作区
- 调度工作流程
- 模块化和可插入
- 身份验证和授权
- 跟踪用户操作
- 有关失败和成功的电子邮件提醒
- SLA警报和自动查杀
- 重试失败的工作
Azkaban的设计主要考虑了可用性。它已在LinkedIn运行了几年,并推动了许多Hadoop和数据仓库流程。
Azkaban VS Oozie
与Oozie相比,azkaba是一个轻量级调度工具。企业应用的功能不是小众化的功能都可以使用azkaba。
- 功能
两个任务流调度器可以调度使用mr,java,脚本工作流任务,都可以进行定时调度。 - 使用
azkaban是直接传参,而Oozie也是直接传参并支持EL表达式。 - 定时
azkaban定时执行任务基于时间,Oozie任务基于时间和数据。 - 资源
az有严格的权限控制,Oozie无严格的权限控制。
Azkaba安装部署
1)下载安装包,需要使用gradle打包源文件,按照官方文档提示操作。
https://github.com/azkaban/azkaban
或
网盘下载 提取码:c0wq
2)解压下载的文件
3)导入azkaban的脚本到mysql。
create database azkaban;
source create-all-sql-2.5.0.sql
4)创建SSL(安全连接),网盘的安装包需要一个证书,按提示输入密码。
keytool -keystore keystore -alias jetty -genkey -keyalg RSA
需要把生成的keystore目录拷贝到azkaban-web目录下。
5)时间同步设置