一、简介
1)Azkaban是什么
Azkaban是由Linkedin开源的一个批量工作流任务调度器。用于在一个工作流内以一个特定的顺序运行一组工作和流程。Azkaban定义了一种KV文件格式来建立任务之间的依赖关系,并提供一个易于使用的web用户界面维护和跟踪你的工作流。
2)Azkaban的功能特点
①Web用户界面
②方便上传工作流
③方便设置任务之间的关系
④工作流调度
⑤认证/授权
⑥能够杀死并重新启动工作流
⑦模块化和可插拔的插件机制
⑧项目工作区
⑨工作流和任务的日志记录和审计
3)Azkaban的架构
MySQL实例 – Azkaban使用MySQL来存储项目和执行
Azkaban Web服务器 – Azkaban使用Jetty作为Web服务器,用作控制器以及提供Web界面
Azkaban执行服务器 – Azkaban执行服务器执行提交工作流
4)Azkaban三种运行模式
①solo server mode
H2
web server和executor server运行在一个进程里
②two server mode
MySQL(主从结构)
web server和executor server运行在不同的进程
③multiple executor mode
MySQL(主从结构)
web server和executor server运行在不同的进程
executor server有多个
二、配置安装
1.mysql安装与配置
已经安装好,直接启动,登录hive账户
2.为azkaban单独创建一个数据库
3.将下载好的tar包上传到主节点的/home/hadoop/app目录下,解压缩
①执行create-all-sql-2.5.0.sql,快速创建表
[root@pc1 ~]# mysql -h pc1 -u hive -phive -Dazkaban</home/hadoop/app/azkaban-2.5.0/create-all-sql-2.5.0.sql
②使用hive账户登录
③切换数据库,查看执行结果
④准备jdbc驱动
4.配置Azkaban web server
①下载安装包,上传解压缩
②Getting keystore for SSL
生成的keystore文件要放在azkaban-web目录下
keytool -keystore keystore -alias jetty -genkey -keyalg RSA
为了便于记忆,所有秘钥使用同一个(比如azkaban)
③查看一下
④修改配置文件 (conf/azkaban.propreties)
修改 Jetty 服务器属性,包括 keystore 的相关配置:
修改mysql连接
修改usermanager,使用绝对路径
⑤running web server
5.安装配置Azkaban Executor Server
①下载上传解压azkaban-executor-server-2.5.0.ta.gz
②setting up the DB
修改mysql连接
配置端口,需要与azkaban-web配置文件里的一致
6.启动
7.*修改web server 和excutor server 都需要配置时区,必须和系统时区一致
default.timezone.id=Asia/Shanghai
OK,安装完毕