官方文档地址:https://azkaban.readthedocs.io/en/latest/
- 下载安装包, 解压
# 官方下载地址,选择需要的版本下载
https://github.com/azkaban/azkaban/releases
tar -zxvf azkaban-3.90.0.tar.gz
- 进入zakaban目录,编译构建
# 先安装git 不然安装过程中会报错
Failed to apply plugin [id 'com.cinnober.gradle.semver-git']
> Cannot run program "git" (in directory "/data/software/azkaban-3.90.0"): error=2, No such file or directory
yum install git -y
###########
# 构建并创建安装包 有的时候可能会下载jar包失败,如果遇到time out就多试几次
./gradlew build installDist -x test
成功会提示BUILD SUCCESSFUL
单服务器启动
单服务器适合测试和小的应用。所有功能都集合在一起了,比较方便
cd azkaban-solo-server/build/install/azkaban-solo-server
# 启动
bin/start-solo.sh
#停止
./bin/shutdown-solo.sh
默认地址为IP:8081
默认用户密码都为azkaban
多服务模式
适用于生产环境
- 数据库准备工作
# 推荐使用mysql
# 进入mysql 创建数据库及用户
mysql> CREATE DATABASE azkaban;
mysql> CREATE USER 'azkaban'@'%' IDENTIFIED BY 'azkaban';
mysql> GRANT SELECT,INSERT,UPDATE,DELETE ON azkaban.* to 'azkaban'@'%' WITH GRANT OPTION;
mysql> flush privileges;
# azkaban官方文档建议调整mysql通信缓冲区的最大值
mysql> set global max_allowed_packet=1024*1024*1024;
mysql> use azkaban;
# 执行建表语句 azkaban目录下的azkaban-db/build/install/azkaban-db目录,会有create-all-sql-<version>.sql文件,执行即可
mysql> source /data/software/azkaban-3.90.0/azkaban-db/build/install/azkaban-db/create-all-sql-0.1.0-SNAPSHOT.sql
2. exec服务启动
# 1. 修改exec配置
vi azkaban-exec-server/build/install/azkaban-exec-server/conf/azkaban.properties
# 找到mysql部分修改成自己的地址
# Azkaban mysql settings by default. Users should configure their own username and password.
database.type=mysql
mysql.port=3306
mysql.host=localhost
mysql.database=azkaban
mysql.user=azkaban
mysql.password=azkaban
# 启动exec服务
cd ./azkaban-exec-server/build/install/azkaban-exec-server
./bin/start-exec.sh
# 启动后要激活执行器
# 会生成一个executor.port文件用来查看端口
# 然后根据此文件激活
curl -G "localhost:$(<./executor.port)/executor?action=activate" && echo
# 结束服务命令
./azkaban-exec-server/build/install/azkaban-exec-server/bin/shutdown-exec.sh
激活成功会返回success
- web服务启动
# 1. 和上面exec一样,先修改配置里的Mysql部分,然后启动
vi azkaban-web-server/build/install/azkaban-web-server/conf/azkaban.properties
# 启动
./azkaban-web-server/build/install/azkaban-web-server/bin/start-web.sh
# 停止命令
./azkaban-web-server/build/install/azkaban-web-server/bin/shutdown-web.sh
对应的目录下面会生成日志文件,如果不成功,可根据日志提示错误解决
例如web服务的日志是webServerLog开头的文件
exec服务的日志是executorServerLog开头的文件
和单服务一样,默认端口是8081,默认账号密码都是azkaban