文章目录
1 不建议使用 3.73.1 其他生产环境换个正式版的 如图:
因为我这个是测试环境必须跟生产一致,所以必须搭建这个版本。
2 下载、解压缩
wget https://github.com/azkaban/azkaban/archive/3.73.1.tar.gz
tar -zxvf azkaban-3.73.1.tar.gz
依赖安装
yum install -y gcc-c++ git
3 编译、 跳过测试.
cd azkaban-3.73.1/
该步骤较慢,需要几分钟的时间 不要慌。
./gradlew build installDist -x test
这个步骤慢的。。。。。怀疑人生还没好。有条件的可以更改 maven 仓库的地址。没条件的就坐等吧
去干别的事情了,回来发现编译有个 bug 没有资源下载
再次编译 ok
4 创建 azkaban 目录、将编译后的 exec web 复制到目录下。
cd /opt/hadoop
mkdir azkaban
cp -r /opt/hadoop/azkaban-3.73.1/azkaban-web-server azkaban
cp -r /opt/hadoop/azkaban-3.73.1/azkaban-exec-server azkaban
路径别搞错了 参考下面 build/install 才是编译好的
[wftapp@biz-141 azkaban-exec-server]$ cp -r /opt/hadoop/azkaban-3.73.1/azkaban-exec-server/build/install/azkaban-exec-server /opt/hadoop/azkaban
[wftapp@biz-141 azkaban-exec-server]$ cp -r /opt/hadoop/azkaban-3.73.1/azkaban-web-server/build/install/azkaban-web-server/ /opt/hadoop/azkaban
[wftapp@biz-141 azkaban-exec-server]$
5 azkaban 数据库初始化
前置任务: 初始化、MySQL Client
MySQL 库 用户初始化之前就已经初始化完成了,如下:
https://blog.csdn.net/cs261244787/article/details/111321574
MySQL Client 安装:
https://blog.csdn.net/cs261244787/article/details/111639469
进入 mysql
mysql -h biz-141 -u azkaban -p
use azkaban;
source /opt/hadoop/create-all-sql-0.1.0-SNAPSHOT.sql
这一步要观察是否报错,报错的话 比如库不对 手动修改下 create-all-sql-0.1.0-SNAPSHOT.sql 脚本。如果是 mysql 5.6 也会报错。 有两个表的属性 设置小一点。
6 配置文件修改
keytool -keystore keystore -alias jetty -genkey -keyalg RSA
初始化 密码全给 azkaban 好记。确认的哪一步要 y
修改 conf/azkaban.properties
azkaban.name=Test
azkaban.label=UAT_AZKABAN
azkaban.color=#FF3601
azkaban.default.servlet.path=/index
web.resource.dir=web/
default.timezone.id=Asia/Shanghai
# Azkaban UserManager class
user.manager.class=azkaban.user.XmlUserManager
user.manager.xml.file=conf/azkaban-users.xml
# Loader for projects
executor.global.properties=conf/global.properties
azkaban.project.dir=projects
# Velocity dev mode
velocity.dev.mode=false
# Azkaban Jetty server properties.
#jetty.use.ssl=false
jetty.maxThreads=25
jetty.ssl.port=8443
jetty.port=8081
jetty.keystore=keystore
jetty.password=azkaban
jetty.keypassword=azkaban
jetty.truststore=keystore
jetty.trustpassword=azkaban
# Azkaban Executor settings
executor.port=12321
# mail settings
mail.sender=
mail.host=
job.failure.email=
job.success.email=
lockdown.create.projects=false
cache.directory=cache
# JMX stats
jetty.connector.stats=true
executor.connector.stats=true
# Azkaban mysql settings by default. Users should configure their own username and password.
database.type=mysql
mysql.port=3306
mysql.host=biz-141
mysql.database=azkaban
mysql.user=azkaban
mysql.password=Mhxzkhl123456
mysql.numconnections=100
#Multiple Executor
azkaban.use.multiple.executors=true
azkaban.executorselector.filters=StaticRemainingFlowSize,MinimumFreeMemory,CpuStatus
azkaban.executorselector.comparator.NumberOfAssignedFlowComparator=1
azkaban.executorselector.comparator.Memory=1
azkaban.executorselector.comparator.LastDispatched=1
azkaban.executorselector.comparator.CpuUsage=1
conf/azkaban-users.xml
增加登陆用户
<user username="admin" password="admin" roles="admin,metrics"/>
conf/azkaban exec 目录配置文件修改
# Azkaban Personalization Settings
default.timezone.id=Asia/Shanghai
# Loader for projects
executor.global.properties=conf/global.properties
azkaban.project.dir=projects
# Velocity dev mode
velocity.dev.mode=false
# Azkaban Jetty server properties.
jetty.use.ssl=false
jetty.maxThreads=25
jetty.port=8081
azkaban.jobtype.plugin.dir=plugins/jobtypes
database.type=mysql
mysql.port=3306
mysql.host=biz-141
mysql.database=azkaban
mysql.user=azkaban
mysql.password=Mhxzkhl123456
mysql.numconnections=100
# Azkaban Executor settings
executor.maxThreads=10
executor.flow.threads=10
executor.connector.stats=true
executor.port=12321
azkaban.use.multiple.executors=true
azkaban.executorselector.filters=StaticRemainingFlowSize,MinimumFreeMemory,CpuStatus
azkaban.executorselector.comparator.NumberOfAssignedFlowComparator=1
azkaban.executorselector.comparator.Memory=1
azkaban.executorselector.comparator.LastDispatched=1
azkaban.executorselector.comparator.CpuUsage=1
7 启动命令:
启动 azkaban exec
/opt/hadoop/azkaban/azkaban-exec-server/bin/start-web.sh
在此目录注册下 azkaban 状态
curl -G “localhost:$(<./executor.port)/executor?action=activate” && echo
启动 azkaban web
/opt/hadoop/azkaban/azkaban-web-server/bin/start-web.sh
异常 先挪一下 keystore 文件
我的测试环境随意了 直接给了 777 是否只读就 ok 忘记了
7 地址、异常
1 访问地址是 https 开头 例如: https://XXXX:8443/
2 账号密码 配置文件中的 admin admin
3 使用中一般项目需要修改 mysql 的配置。 比如单条数据大小。 修改为 100MB 可以自行百度
4 其他异常一定要读日志文件查找
5 异常 azkaban 节点 问题。去到数据库查找 exec 这类的表。 很简单的结构。包括迁移会用到。