欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

什么是Azkaban?

程序员文章站 2023-10-31 12:06:04
Azkaban是什么 Azkaban是由Linkedin开源的做批量工作流任务的调度器。在一个工作流内按照特定的顺序运行一组工作和流程。Azkaban定义了一种KV文件格式来建立任务之间的相互依赖关系,并且提供了一个易于使用的web用户界面维护与跟踪你的工作流。 Azkaban的功能特点: web用 ......

Azkaban是什么

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

 

Azkaban的功能特点:

      web用户界面                                     

      方便上传工作流

      方便设置任务之间的关系

      工作流调度

      认证/授权

      能够杀死并重新启动工作流

      模块化与可插拔的插件机制

      项目工作区

     工作流与任务的日志记录和审计

 

Azkaban的核心架构体系

                         什么是Azkaban?

 

       1)MySQL实例--Azkaban使用MySQL来存储项目和执行(暂只支持MySQL数据库,未来可能会支持更多的数据库)

      2)Azkaban Web服务器--Azkaban使用Jetty作为Web服务器,用作控制器和提供Web界面(为什么不同Tomcat?由于Tomcat比较重量级,需要单独部署,这里没有必要)

      3)Azkaban执行服务器--Azkaban执行服务器执行提交工作流

 

 

Azkaban的三种运行模式

        1)solo server mode(这种模式不会用到,了解即可)

           H2(存储用H2数据库)

           web server和executor server运行在一个进程里

        2)two server mode (重点掌握)

               MySQL(主从结构,为了避免单点故障)

           web server和executor server运行在不同的进程

       3)multiple executor mode

            MySQL(主从结构)

            web server和executor server运行在不同的进程

            executor server有多个(避免一个executor server负载过多)