描述:
azkaban主要用于离线计算任务的调度
说明:
此处Azkaban选择版本为:3.52.0,部署方式为Cluster模式,即支持多Executor计算节点,目前默认安装方式选择在同一台机器上安装web/executor两个服务。
安装步骤:
-
解压安装包中的azkaban目录下的`azkaban-3.52.0-bin.tar.gz`到指定的安装目录
-
在mysql创建azkaban元数据库,并且使用安装目录下的`create-all-sql-0.1.0-SNAPSHOT.sql`脚本进行数据库的初始化
CREATE
DATABASE
azkaban;
CREATE
USER
'azkaban'
@
'%'
IDENTIFIED
BY
'azkaban'
;
GRANT
SELECT
,
INSERT
,
UPDATE
,
DELETE
ON
azkaban.*
to
'azkaban'
@
'%'
WITH
GRANT
OPTION
;
flush
privileges
;
use azkaban;
-
修改azkaban-web-server目录下的/conf/azkaban.properties,替换以下参数为真实环境变量
# Azkaban mysql settings by default. Users should configure their own username and password. database.type=mysql mysql.port=3306 mysql.host=172.31.232.7 mysql.database=azkaban mysql.user=azkaban mysql.password=azkaban mysql.numconnections=10
-
修改azkaban-web-server目录下的/conf/global.properties,替换以下参数为真实环境IP
job.notification.started.1.url=http://${IP:PORT}/job-scheduler/jobs/callback job.notification.completed.1.url=http://${IP:PORT}/job-scheduler/jobs/callback
-
修改azkaban-web-server目录下的/conf/azkaban-users.xml,替换为真实环境的登录用户名和密码
<azkaban-users> <user groups="azkaban" password="azkaban" roles="admin" username="azkaban"/> <user password="metrics" roles="metrics" username="metrics"/> <role name="admin" permissions="ADMIN"/> <role name="metrics" permissions="METRICS"/> </azkaban-users>
-
在azkaban-exec-server目录下分别重复步骤3、步骤4,并且修改/conf/azkaban.properties,替换以下参数为真实的Azkaban Web服务地址
# Azkaban Jetty server properties.
jetty.port=8081# 指定executor的端口
executor.port=12321# Where the Azkaban web server is located
azkaban.webserver.url=http://${IP:PORT} -
启动executor服务
-
【注意】在mysql中的azkaban.executors表更新对应executor实例的`active`字段为1,用于azkaban-web服务的executor服务感知,如果此步骤不执行,web服务启动将报错
update
executors
set
active = 1
-
启动azkaban-web服务
- 访问Azkaban WEB UI: http://${IP:PORT}/index