Azkaban
- azkaban
- 是由领英退出的一款开源免费的工作流调度器软件
- 特点
- 功能强大 可以调度几乎所有软件的执行(command)
- 配置简单 job配置文件
- 提供了web页面使用
- java语言开发 源码清晰可见 可以进行二次开发
- 架构
- web服务器 :对外提供web服务 用户在页面上进行项目的相关管理
- executor服务器:负责具体的工作流的调度提交。
- 数据库:用于保存工作流相关信息(比如:mysql)
- 部署模式
- 单节点模式:web、executor在同一个进程 适用于测试体验
- two-server:web、executor在不同的进程中 可以使用第三方数据库
- mutil-executor-server:web、executor在不同的机器上 可以部署多个executor服务器
-
安装部署
-
单节点部署模式 注意时区 内存检测的关闭
-
启动时候必须在安装包的根目录下进行启动
bin/start-solo.sh 正确 ./start-solo.sh 错误
-
-
azkaban开发流程
-
编写job的配置文件 xxxxx.job
type=command command=xxxx -
把所有job配置打成一个zip的压缩包
-
登录页面node-1:8081 创建工程(默认用户名密码都是azkaban)
-
上传zip压缩包
-
选择调度schduler或者立即执行executor工程。
-
-
two server模式部署
- 该模式的特点是web服务器和executor服务器分别位于不同的进程中
- 使用第三方的数据库进行数据的保存 :mysql
- 安装部署注意事项
- 先对mysql进行初始化操作
- 配置azkaban.properties 注意时区 mysql相关 ssl
- 启动时候注意需要自己手动的激活executor服务器 在根目录下启动
- 如果启动出错 通过安装包根目录下的日志进行判断
- 访问的页面https
-
multiple-executor部署模式
-
所谓的 multiple-executor指的是可以在多个机器上分别部署executor服务器
相当于做了一个负载均衡
-
特别注意:executor启动(包括重启)的时候 默认不会激活 需要自己手动激活
对应的mysql中的表executors active :0 表示未激活 1表示激活
可以自己手动修改数据提交激活 也可以使用官方的命令请求激活
curl -G "node-3:$(<./executor.port)/executor?action=activate" && echo
- azkaban调度总结
- 理论上任何一款软件,只有可以通过shell command执行 都可以转化成为azkaban的调度执行
- type=command command = sh xxx.sh
Azkaban是一款由LinkedIn开发的开源工作流调度器,具有功能强大、配置简单的特性,支持通过Web界面管理。它由Web服务器、Executor服务器和数据库构成,可部署为单节点、两服务器或多Executor服务器模式。安装部署涉及时区设置、内存检测关闭及数据库配置。Azkaban的开发流程包括编写job配置文件、打包上传,并在Web界面中执行。
1888

被折叠的 条评论
为什么被折叠?



