azkaban-3.72.0编译与安装


全场动作必须整齐划一,来!


Azkaban官方提供了源码,安装需要编译。

开始编译:
下载之后再进行编译。

1、azkaban:https://github.com/azkaban/azkaban/archive/3.72.0.tar.gz

创建一个文件夹:

mkdir /opt/module
mkdir /opt/software

切换到该目录下:

cd /opt/software

wget下载:

wget https://github.com/azkaban/azkaban/archive/3.72.0.tar.gz

重命名:

mv 3.73.1.tar.gz azkaban-3.72.0.tar.gz

解压:

tar -zxvf azkaban-3.72.0.tar.gz -C /opt/module

安装所需依赖:

yum install -y gcc-c++ git

下载gradle-4.6-all.zip,直接下载到
https://services.gradle.org/distributions/gradle-4.6-all.zip
保存到/opt/module/azkaban-3.72.0/gradle/wrapper目录。
azkaban-3.72.0编译与安装_第1张图片
vim gradle-wrapper.properties
azkaban-3.72.0编译与安装_第2张图片
修改distributionUrl的值为
azkaban-3.72.0编译与安装_第3张图片
在编译之前还需要做一下工作:
改centos 源可以参考:https://www.cnblogs.com/gandoufu/p/9665762.html

备份原镜像文件,便于后期恢复

[root@keepmydream ~]# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

下载新的CentOS-Base.repo 到/etc/yum.repos.d/

Centos5地址:

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo

Centos6地址:

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

Centos7地址:

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

清除缓存

yum clean all

生成缓存

yum makecache

在这里插入代码片

然后在次修改build.gradle中

maven{ url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'}

不改可能贼鸡儿慢

执行编译 编译 第一次运行时,此过程时间会比较长

-x test 表示跳过测试

./gradlew build installDist -x test

若编译时失败,重新编译执行:

./gradlew clean build installDist -x test

结果为这样编译成功:
在这里插入图片描述
二、mysql的配置文档

创建并使用数据库

CREATE DATABASE azkaban;
use azkaban;

创建用户并授权

CREATE USER 'azkaban'@'%' IDENTIFIED BY 'azkaban'; 
GRANT ALL ON azkaban.* to 'azkaban'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

导入建表语句

source /opt/module/azkaban-3.72.0/azkaban-db/build/sql/create-all-sql-0.1.0-SNAPSHOT.sql;

azkaban-3.72.0编译与安装_第4张图片
azkaban-3.72.0编译与安装_第5张图片***

集群配置


配置 WebServer
配置 jetty SSL

cd azkaban-web

生成keystore
注意开始和结束的时候输入的密码,其他按提示输入即可

keytool -keystore keystore -alias jetty -genkey -keyalg RSA

修改conf/azkaban.properties

# Azkaban Personalization Settings
azkaban.name=Test
azkaban.label=My Local Azkaban
azkaban.color=#FF3601
azkaban.default.servlet.path=/index
web.resource.dir=/opt/module/azkaban-3.72.0/azkaban/azkaban-web/web/
default.timezone.id=Asia/Shanghai
# Azkaban UserManager class
user.manager.class=azkaban.user.XmlUserManager
user.manager.xml.file=/opt/module/azkaban-3.72.0/azkaban/azkaban-web/conf/azkaban-users.xml
# Loader for projects
executor.global.properties=/opt/module/azkaban-3.72.0/azkaban/azkaban-web/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=123456
jetty.keypassword=123456
jetty.truststore=keystore
jetty.trustpassword=123456
# 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=azkaban1
mysql.database=azkaban
mysql.user=azkaban
mysql.password=azkaban
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

1.3 配置conf/azkaban-users.xml
我这里新增加了一条admin,具有所有权限



配置 ExecutorsServer


所有的ExecutorsServer服务器均按如下配置即可

修改conf/azkaban.properties

# Azkaban Personalization Settings
default.timezone.id=Asia/Shanghai
# Loader for projects
executor.global.properties=/opt/module/azkaban-3.72.0/azkaban/azkaban-exec/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=azkaban1
mysql.database=azkaban
mysql.user=azkaban
mysql.password=azkaban
mysql.numconnections=100
# Azkaban Executor settings
executor.maxThreads=50
executor.flow.threads=30
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

首先在三台机器上

启动azkaban-exec

cd azkaban-exec

启动

bin/start-exec.sh

在WebServer机器上

启动 WebServer

注意:执行命令时的目录,否则会找不到某些文件

cd azkaban-web

启动

bin/start-web.sh

2.3 重新启动WebServer
如果还是看到如下信息:

azkaban-3.72.0编译与安装_第6张图片解决方式:登录azkaban使用的mysql数据库,查看executors表中是否存在active=1的executor,如果没有,修改active字段,而后再次启动即可
azkaban-3.72.0编译与安装_第7张图片

修改:

update executors set active = 1


结果在浏览器中输入https://ip:8443/index
azkaban-3.72.0编译与安装_第8张图片

最后留个一个问题:

希望得到大佬的指导 虽然都启动了!web界面都出来了!但是出现这个错误! 我也上网查了,都是让找对应的编译jar包里copy,但是我压根都没有找到这个文件啊!求助


azkaban-3.72.0编译与安装_第9张图片

你可能感兴趣的:(azkaban)