Azkaban【部署 01】Linux环境 CentOS Linux release 7.5.1804安装配置azkaban-3.70.0编译阶段(附安装包及gradle-4.6资源)

简介: 【2月更文挑战第4天】Linux环境 CentOS Linux release 7.5.1804安装配置azkaban-3.70.0编译阶段(附安装包及gradle-4.6资源)

1. 资源分享

链接:https://pan.baidu.com/s/1Bz2Z5xgY9dJiTMdCeKB8KQ
提取码:f6s9
包含资源:azkaban-3.70.0.tar.gz 和 gradle-4.6-all.zip

2. 前置条件

1.JDK 1.8+【亲测JDK 11无法使用】

[root@aliyun ~]# java -version
openjdk version "11" 2018-09-25
OpenJDK Runtime Environment 18.9 (build 11+28)
OpenJDK 64-Bit Server VM 18.9 (build 11+28, mixed mode)
# 构建报错
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine java version from '11'.
# 只好换成安装JDK1.8的另一台服务器
[root@tcloud ~]# java -version
java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)

2.Gradle
用于源码编译【资源分享里有 gradle-4.6-all.zip】

3.Git
Azkaban 的编译过程需要用Git下载部分JAR包,所以需要预先安装:

[root@tcloud ~]# yum install git

4.其他依赖安装

# 否则会报 Could not find Linker 'g++' in system path.
[root@tcloud ~]# yum install gcc-c++*

3. 源码获取

Azkaban在3.0版本之后就不提供对应的安装包,需要自己下载源码进行编译。可以在GitHub :snail:上下载【网络不好,或不追求最新版本4.0.0的,可以使用我分享的百度网盘资源】,也可以使用 wget直接下载对应release版本的 tar.gz 文件:

# 下载
[root@tcloud ~]# wget https://github.com/azkaban/azkaban/archive/3.70.0.tar.gz

4. 编译环境

Azkaban 3.70.0 编译需要依赖 gradle-4.6-all.zip 。Gradle 是一个项目自动化构建开源工具,类似于 Maven。需要注意的是不同版本的 Azkaban 依赖 Gradle 版本不同,可以在解压后查看 ${AZKABAN_HOME}/gradle/wrapper/gradle-wrapper.properties 文件获取。

[root@tcloud azkaban]# tar -zxvf azkaban-3.70.0.tar.gz
[root@tcloud azkaban]# cat ./azkaban-3.70.0/gradle/wrapper/gradle-wrapper.properties
# 省略部分无关信息
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip

在编译时程序会自动去 distributionUrl 定义的地址进行下载,但是下载可能会很慢。为避免影响编译过程,建议先手动下载至 /gradle/wrapper/ 目录下,可以通过wget下载 :snail:【当然也可以使用我分享的百度云盘资源 :rocket:】:

[root@tcloud ~]# wget https://services.gradle.org/distributions/gradle-4.6-all.zip
# 复制 gradle-4.6-all.zip 文件,我用的不是wget下载的。
[root@tcloud ~]# cp /home/azkaban/gradle-4.6-all.zip \
/home/azkaban/azkaban-3.70.0/gradle/wrapper/

此时需要修改 gradle-wrapper.properties 中的 distributionUrl 属性,指明使用本地的gradle。

[root@tcloud ~]# vim ./azkaban-3.70.0/gradle/wrapper/gradle-wrapper.properties
    # 修改 distributionUrl
    distributionUrl=gradle-4.6-all.zip

5. 项目编译

在${AZKABAN_HOMW}目录下执行编译命令【要下载构建项目需要的大量jar包,应该有好几百个,所以时间较久 :clock11: 我的用时23分59秒】:

[root@tcloud azkaban-3.70.0]# ./gradlew build installDist -x test

编译过程中需要注意以下问题:

  • jar 包下载速度根据网络情况而定,通常都不会很快,这个阶段也耐心;
  • 如果出现网络问题而导致 jar无法下载,编译可能会被强行终止,这时候重复执行编译命令即可,gradle 会把已经下载的 jar 包缓存到本地,所以不用担心会重复下载。

编译成功后:

BUILD SUCCESSFUL in 23m 59s
83 actionable tasks: 83 executed

查看一下都编译出什么文件了:

[root@tcloud azkaban-3.70.0]# find /home/azkaban/azkaban-3.70.0/ -name '*SNAPSHOT.tar.gz'
# 为了更直观 删掉了路径信息 调整了一下顺序
# solo server model 安装文件
azkaban-solo-server-0.1.0-SNAPSHOT.tar.gz
# multiple-executor 安装文件
azkaban-exec-server-0.1.0-SNAPSHOT.tar.gz
azkaban-web-server-0.1.0-SNAPSHOT.tar.gz
# 其他文件【有知道怎么用的小伙伴可以分享一下】
azkaban-db-0.1.0-SNAPSHOT.tar.gz
az-crypto-0.1.0-SNAPSHOT.tar.gz
az-jobsummary-0.1.0-SNAPSHOT.tar.gz
az-hdfs-viewer-0.1.0-SNAPSHOT.tar.gz
azkaban-hadoop-security-plugin-0.1.0-SNAPSHOT.tar.gz
az-reportal-0.1.0-SNAPSHOT.tar.gz
az-hadoop-jobtype-plugin-0.1.0-SNAPSHOT.tar.gz

曾经的踩坑记录【这次安装没有遇到 :lollipop:】:

# 报错
# unzipping /root/.gradle/wrapper/dists/gradle-4.6-all/eia1fevtc8usrd8sjmiodfisd/gradle-3.3-all.zip to /root/.gradle/wrapper/dists/gradle-4.6-all/eia1fevtc8usrd8sjmiodfisd 

# 解决方法
cd /root/.gradle/wrapper/dists/gradle-4.6-all/eia1fevtc8usrd8sjmiodfisd/
# 删除此文件夹里面的文件,将下载好的 gradle-4.6-all.zip 复制到这里。继续进行编译。
目录
相关文章
|
5天前
|
Oracle Java 关系型数据库
Linux环境安装配置JDK11
Linux环境安装配置JDK11
30 0
|
7天前
|
网络安全 开发工具
Centos6.5安装配置autofs服务
配置IP地址和挂载yum源后,安装autofs:`yum -y install autofs`。编辑配置文件 `/etc/auto.misc` 和 `/etc/auto.master`,示例中展示了将yum源路径添加到auto.master。关闭防火墙并重启autofs服务以应用更改。
11 2
|
3天前
|
编解码 Linux
FFmpeg开发笔记(十二)Linux环境给FFmpeg集成libopus和libvpx
在《FFmpeg开发实战》一书中,介绍了如何在Linux环境下为FFmpeg集成libopus和libvpx,以支持WebM格式的Opus和VP8/VP9编码。首先,下载并安装libopus。接着,下载并安装libvpx。最后,在FFmpeg源码目录下,重新配置FFmpeg,启用libopus和libvpx,编译并安装。通过`ffmpeg -version`检查版本信息,确认libopus和libvpx已启用。
15 1
FFmpeg开发笔记(十二)Linux环境给FFmpeg集成libopus和libvpx
|
3天前
|
编解码 Linux
FFmpeg开发笔记(十)Linux环境给FFmpeg集成vorbis和amr
在Linux环境下,为FFmpeg添加对AAC、MP3、OGG和AMR音频格式的支持,需安装libogg、libvorbis和opencore-amr库。首先,从官方源下载各库的最新源码,如libogg-1.3.5、libvorbis-1.3.7和opencore-amr-0.1.6,然后解压并依次执行`./configure`、`make`和`make install`进行编译安装。接着,在FFmpeg源码目录中,使用`./configure`命令重新配置,并重新编译安装FFmpeg。最后,验证FFmpeg版本信息确认已启用ogg和amr支持。
14 0
FFmpeg开发笔记(十)Linux环境给FFmpeg集成vorbis和amr
|
7天前
|
运维 Linux 网络安全
【运维系列】Centos7安装配置ntp服务
配置yum并安装ntp,编辑ntp配置文件,取消17行注释,适应本机网段,22行设置使用本地时间。关闭防火墙,重启ntp服务。测试时先关闭防火墙,然后使用ntpdate命令成功同步时间。
18 0
|
9天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
3天前
|
Linux
【Linux】深入理解ls命令
【Linux】深入理解ls命令
|
2天前
|
安全 网络协议 Linux
【专栏】一文教你玩转 Linux 的 ping 命令,从此成为 Linux 网络高手
【4月更文挑战第28天】本文详细介绍了Linux系统中ping命令的使用,包括其基本语法、输出信息、常用参数及高级用法。通过ping,用户可测试网络连通性、诊断故障及评估性能。此外,文章还讨论了ping在不同协议、模拟网络环境及与其他命令结合使用时的场景。注意防火墙和网络环境可能影响ping结果,理解错误信息有助于网络问题排查。熟练掌握ping命令,能助你成为Linux网络专家。不断学习和实践,提升网络技能,为构建稳定网络环境贡献力量。
|
3天前
|
XML 安全 Linux
【Linux】深入探究CentOS防火墙(Firewalld):基础概念、常用命令及实例操作
【Linux】深入探究CentOS防火墙(Firewalld):基础概念、常用命令及实例操作
|
6天前
|
监控 Linux Windows
50个必知的Linux命令技巧,你都掌握了吗?(下)
50个必知的Linux命令技巧,你都掌握了吗?(下)