azkaban 集群安装(记录过程)

本文档详细介绍了如何下载和编译Azkaban项目,包括使用git clone获取源代码,通过gradlew构建安装过程。在编译过程中遇到了测试失败的问题,具体涉及到BasicTimeCheckerTest的多个测试用例。为了解决这个问题,文章建议先执行清理任务,然后跳过测试进行编译。接着,安装Python依赖,并创建与配置Azkaban所需数据库,包括创建数据库、用户、导入表结构和数据。最后,启动Azkaban的执行服务和前端服务,并提供了访问页面的默认端口和凭证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下载源代码:

git clone https://github.com/azkaban/azkaban.git

编译安装:

./gradlew build installDist

报错:

> Task :azkaban-common:test 

azkaban.trigger.BasicTimeCheckerTest > testPDTtoPSTdst1 FAILED
    java.lang.AssertionError
        at org.junit.Assert.fail(Assert.java:86)
        at org.junit.Assert.assertTrue(Assert.java:41)
        at org.junit.Assert.assertTrue(Assert.java:52)
        at azkaban.trigger.BasicTimeCheckerTest.testPDTtoPSTdst1(BasicTimeCheckerTest.java:185)

azkaban.trigger.BasicTimeCheckerTest > testPDTtoPSTdst2 FAILED
    java.lang.AssertionError
        at org.junit.Assert.fail(Assert.java:86)
        at org.junit.Assert.assertTrue(Assert.java:41)
        at org.junit.Assert.assertTrue(Assert.java:52)
        at azkaban.trigger.BasicTimeCheckerTest.testPDTtoPSTdst2(BasicTimeCheckerTest.java:227)

azkaban.trigger.BasicTimeCheckerTest > testPDTtoPSTdst3 FAILED
    java.lang.AssertionError
        at org.junit.Assert.fail(Assert.java:86)
        at org.junit.Assert.assertTrue(Assert.java:41)
        at org.junit.Assert.assertTrue(Assert.java:52)
        at azkaban.trigger.BasicTimeCheckerTest.testPDTtoPSTdst3(BasicTimeCheckerTest.java:264)

azkaban.trigger.BasicTimeCheckerTest > testPSTtoPDTunderUTC FAILED
    java.lang.AssertionError
        at org.junit.Assert.fail(Assert.java:86)
        at org.junit.Assert.assertTrue(Assert.java:41)
        at org.junit.Assert.assertTrue(Assert.java:52)
        at azkaban.trigger.BasicTimeCheckerTest.testPSTtoPDTunderUTC(BasicTimeCheckerTest.java:122)

azkaban.trigger.BasicTimeCheckerTest > testPSTtoPDTdst2 FAILED
    java.lang.AssertionError
        at org.junit.Assert.fail(Assert.java:86)
        at org.junit.Assert.assertTrue(Assert.java:41)
        at org.junit.Assert.assertTrue(Assert.java:52)
        at azkaban.trigger.BasicTimeCheckerTest.testPSTtoPDTdst2(BasicTimeCheckerTest.java:150)

清除:

./gradlew clean

去掉测试重新编译:

./gradlew build installDist -x test

安装python依赖,python版本必须是python3以上

pip install -r requirements.txt 

创建数据库

mysql> CREATE DATABASE azkaban;

创建用户并赋权

mysql> CREATE USER 'azkaban'@'%' IDENTIFIED BY 'password';
# 赋予用户 INSERT, SELECT, UPDATE, DELETE 等权限给azkaban用户
mysql> GRANT SELECT,INSERT,UPDATE,DELETE ON azkaban.* to 'azkaban'@'%' WITH GRANT OPTION;
# 刷新权限
mysql> flush privileges;

导入表结构和数据,在编译完成后,$AZKABAN_HOME/azkaban-db/build/install/azkaban-db目录下会有相关的sql脚本,我们使用create-all-sql-<version>-SNAPSHOT.sql就可以

mysql> source /home/azkaban/azkaban/azkaban-db/build/install/azkaban-db/create-all-sql-0.1.0-SNAPSHOT.sql

修改数据库配置

cd azkaban-exec-server/build/install/azkaban-exec-server
vim conf/azkaban.properties

# mysql 配置
mysql.user=<username>
mysql.password=<password>

启动服务

./bin/start-exec.sh

配置前端服务

cd azkaban-web-server/build/install/azkaban-web-server
vim conf/azkaban.properties

# mysql 配置
mysql.user=<username>
mysql.password=<password>

启动服务

./bin/start-web.sh

访问页面, 默认端口为8081,账号密码都是azkaban

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值