Atlas_2.4.0编译
# 1. 构建环境准备与依赖
Atlas 2.4.0 的编译依赖较多,推荐采用 Bigtop 统一的构建环境,可极大降低踩坑概率。编译前请确保如下核心组件全部就绪:
环境组件 | 推荐版本 | 安装参考 |
---|---|---|
JDK | 1.8 | ONEKEY——安装JDK1.8 |
Maven | 3.8.4 | ONEKEY——安装Maven3.8.4 |
Gradle | 内嵌于 Bigtop | ONEKEY——安装Gradle5.6.4 |
提示
如未配置上述环境,建议直接参考本站 JDK/Maven/Gradle 专题文档。所有安装细节与一键脚本均已整理好,包含环境变量设置、常见异常修复与离线包下载,省心高效。特别是离线或内网环境,提前下载好所有依赖包能极大提升构建成功率。
# 2. 源码包管理与离线编译建议
Atlas RPM 打包前,需准备好源码包。默认路径为 /opt/modules/bigtop/dl/atlas-2.4.0.tar.gz
,首次执行构建任务时系统会自动检测该包是否存在:
- 若缺失,系统将联网下载,速度受外网影响大且易受阻断。
- 离线环境建议提前手动放置,确保编译连贯。
警告
如依赖网络下载,经常因墙、代理、带宽等原因失败,强烈建议离线环境或生产集群提前准备好全部源码与依赖包。
# 3. 一键构建命令与参数说明
确认所有依赖无误后,在 Bigtop 根目录下直接执行:
gradle atlas-rpm \
-PparentDir=/usr/bigtop \
-Dbuildwithdeps=true \
-PpkgSuffix -d
1
2
3
4
2
3
4
上述命令推荐用法参数含义如下:
-PparentDir
:指定 Bigtop 项目根路径(不设置易导致路径异常)-Dbuildwithdeps=true
:强制同步相关依赖组件,确保完整编译-PpkgSuffix
:自定义包名后缀,可选
注意
务必确保当前 shell 环境变量(JAVA_HOME
/M2_HOME
/GRADLE_HOME
等)已正确指向实际软件路径,否则极易在编译中途遇到找不到依赖的报错。
# 4. 构建流程与关键日志说明
执行 gradle 任务后,Bigtop 会自动触发底层 Maven 进行源码编译。你可以在日志中看到最终调用的 Maven 命令:
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd atlas-release-2.4.0
+ /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.fRJgqg
+ umask 022
+ cd /opt/modules/bigtop/build/atlas/rpm//BUILD
+ cd atlas-release-2.4.0
+ env COMPONENT_VERSION=2.4.0 bash /opt/modules/bigtop/build/atlas/rpm/SOURCES/do-component-build
++ dirname /opt/modules/bigtop/build/atlas/rpm/SOURCES/do-component-build
+ SCRIPT_DIR=/opt/modules/bigtop/build/atlas/rpm/SOURCES
+ GH_PROXY=https://ghgo.xyz/
+ source /opt/modules/bigtop/build/atlas/rpm/SOURCES/bigtop.bom
++ ZOOKEEPER_VERSION=3.5.9
++ HADOOP_VERSION=3.3.4
++ HBASE_VERSION=2.4.13
++ HIVE_VERSION=3.1.3
++ TEZ_VERSION=0.10.1
++ OOZIE_VERSION=5.2.1
++ SOLR_VERSION=8.11.2
++ SPARK_VERSION=3.5.5
++ FLINK_VERSION=1.17.2
++ PHOENIX_VERSION=5.1.2
++ BIGTOP_GROOVY_VERSION=2.5.4
++ BIGTOP_UTILS_VERSION=3.2.0-SNAPSHOT
++ BIGTOP_SELECT_VERSION=3.2.0-SNAPSHOT
++ BIGTOP_JSVC_VERSION=1.2.4
++ ALLUXIO_VERSION=2.8.0
++ KAFKA_VERSION=2.8.1
++ YCSB_VERSION=0.17.0
++ ZEPPELIN_VERSION=0.10.1
++ GPDB_VERSION=5.28.5
++ AMBARI_VERSION=2.7.5
++ BIGTOP_AMBARI_MPACK_VERSION=2.7.5
++ LIVY_VERSION=0.7.1
++ RANGER_VERSION=2.4.0
++ SQOOP_VERSION=1.4.7
++ REDIS_VERSION=7.4.0
++ DOLPHINSCHEDULER_VERSION=3.2.2
++ DORIS_VERSION=2.1.7
++ NIGHTINGALE_VERSION=7.7.2
++ CATEGRAF_VERSION=0.4.1
++ VICTORIAMETRICS_VERSION=1.109.1
++ CLOUDBEAVER_VERSION=24.3.3
++ CELEBORN_VERSION=0.5.3
++ OZONE_VERSION=1.4.1
++ IMPALA_VERSION=4.4.1
++ TRINO_VERSION=474
++ HUDI_VERSION=1.0.1
++ PAIMON_VERSION=1.1.0
++ ATLAS_VERSION=2.4.0
++ JDK_VERSION=1.8
++ SCALA_VERSION=2.12.13
+ exit 0
Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.bmRNFG
+ umask 022
+ cd /opt/modules/bigtop/build/atlas/rpm//BUILD
+ '[' /opt/modules/bigtop/build/atlas/rpm/BUILDROOT/atlas_3_2_0-2.4.0-1.el7.x86_64 '!=' / ']'
+ rm -rf /opt/modules/bigtop/build/atlas/rpm/BUILDROOT/atlas_3_2_0-2.4.0-1.el7.x86_64
++ dirname /opt/modules/bigtop/build/atlas/rpm/BUILDROOT/atlas_3_2_0-2.4.0-1.el7.x86_64
+ mkdir -p /opt/modules/bigtop/build/atlas/rpm/BUILDROOT
+ mkdir /opt/modules/bigtop/build/atlas/rpm/BUILDROOT/atlas_3_2_0-2.4.0-1.el7.x86_64
+ cd atlas-release-2.4.0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
下面是提取后的编译命令
mvn clean install \
-Pdist \
-DskipTests \
-Dhadoop.version=3.3.4 \
-Dhbase.version=2.4.13 \
-Dsqoop.version=1.4.7 \
-Dkafka.version=2.8.1 \
-Dhive.version=3.1.3
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
- 整体构建包含源码编译、依赖拉取、rpm 制品输出三步,任何阶段出错都能在命令行日志里快速定位。
- 如果发现依赖包下载失败、仓库连接超时,基本可判定为环境未连通或网络阻断,可切换离线包。
# 5. 编译资源消耗与时间评估
Atlas 体量较大,构建期间资源占用显著,建议配置如下:
- CPU:4核及以上
- 内存:8GB 起步
- 磁盘空间:10GB 以上(临时与产物目录)
# 6. 编译结果产物展示
所有 RPM 包统一输出至如下路径:
/opt/modules/bigtop/output/atlas/noarch/
1
-rw-r--r-- 1 root root 645287868 May 15 11:06 atlas_3_2_0-2.4.0-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 9883568 May 15 11:06 atlas_3_2_0-couchbase-plugin-2.4.0-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 10557712 May 15 11:06 atlas_3_2_0-falcon-plugin-2.4.0-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 14674820 May 15 11:06 atlas_3_2_0-hbase-plugin-2.4.0-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 13042840 May 15 11:06 atlas_3_2_0-hive-plugin-2.4.0-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 12611832 May 15 11:06 atlas_3_2_0-impala-plugin-2.4.0-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 12898636 May 15 11:06 atlas_3_2_0-kafka-plugin-2.4.0-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 10544068 May 15 11:06 atlas_3_2_0-sqoop-plugin-2.4.0-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 61476964 May 15 11:06 atlas_3_2_0-storm-plugin-2.4.0-1.el7.x86_64.rpm
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 7. 关键改造点与后续集成
Atlas RPM 包二次开发与适配过程常需涉及如下修改(参考实际业务需求可按需调整):