大数据中间件之Azkaban

Azkaban

介绍

Azkaban是在LinkedIn(领英)上创建的用于运行Hadoop作业的批处理工作流作业调度程序

Azkaban特征

分布式多执行器

MySQL重试

友好的用户界面

有条件的工作流程

数据触发

高安全性

支持插件扩展,从Web UI到作业执行

完整的作者管理系统

调度工具对比

Oozie

  • 重量级的任务调度系统,功能全面,但是部署及配置会比较麻烦,从 crontab 到Oozie 上手会有一定难度

    • Azkaban

Azkaban

  • Azkaban 是介于 oozie 和 Crontab 之间的工具,但是安全性上不如 Oozie,同时如果出现失败情况,Azkaban会丢失所有的工作流,Oozie则可以继续运行

Azkaban架构

mysql服务器: 存储元数据,如项目名称、项目描述、项目权限、任务状态、SLA规则等

AzkabanWebServer: 对外提供web服务,使用户可以通过web页面管理。职责包括项目管理、权限授权、任务调度、监控executor。

AzkabanExecutorServer:负责具体的工作流的提交、执行

Azkaban部署模式

solo server mode(单机)

  • 该模式中webServer和executorServer运行在同一个进程中,进程名是AzkabanSingleServer。使用自带的H2数据库。这种模式包含Azkaban的所有特性,但一般用来学习和测试。

two-server mode(远程)

  • 该模式使用MySQL数据库, Web Server和Executor Server运行在不同的进程中

multiple-executor mode(集群或者分布式)

  • 该模式使用MySQL数据库, Web Server和Executor Server运行在不同的机器中。且有多个Executor Server。该模式适用于大规模应用。
上一篇:Azkaban报错


下一篇:Azkaban-开源任务调度程序(使用篇)