1、理论基础
1、azkaban是什么?
azkaban是一个工作流定时调度器,可以解决hadoop jobs的作业依赖问题,使相互依赖的job按顺序执行。
2、azkaban的特点?
a.兼容所有版本的hadoop。
这一点与oozie不同,oozie严格依赖hadoop的版本。
b.易于使用的web页面。
比oozie功能更强大,更好使用。
c.丰富的工作流类型并支持自定义。
d.安全的认证及权限控制。
e.配置电子邮件提醒。
3、azkaban的基础架构
web server:
工作流系统的主要管理者。
负责用户登录认证,project管理,定时调度,监控等功能。
executor server:
负责工作流的提交和执行,通过mysql来协调任务的执行。
mysql:
存储大部分执行流的状态,web server和executor server都需要访问mysql。
4、使用步骤
a.以配置文件的形式定义好工作流。
b.通过web页面上传到azkaban上,配置文件存储在mysql中。
c.配置定时调度。
d.达到调度时间节点,executor server到mysql中读取配置文件,然后将数据下载到本地。
f.executor server开始执行工作流,并将执行的状态信息不断地放入mysql中。web server可以查看状态信息。
2、azkaban的部署
1、安装包
azkaban-web-server-2.5.0.tar.gz
azkaban-executor-server-2.5.0.tar.gz
azkaban-sql-script-2.5.0.tar.gz
#这就是一个sql脚本,全是建语句。azkaban会用到mysql中的一些表,这些表需要手动创建。
mysql-libs.zip
2、安装
a.创建目录
mkdir -p /opt/apps/azkaban && mkdir /opt/source && cd /opt/source
b.解压
tar -zxvf azkaban-web-server-2.5.0.tar.gz -C ../apps/azkaban
tar -zxvf azkaban-executor-server-2.5.0.tar.gz -C ../apps/azkaban
tar -zxvf azkaban-sql-script-2.5.0.tar.gz -C ../apps/azkaban
c.改名
cd /o