Superset_4.1.2编译
# 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 |
Miniconda2 | 4.8.3 | ONEKEY——安装Miniconda2 |
提示
如未配置上述环境,建议直接参考本站 JDK/Maven/Gradle 专题文档。所有安装细节与一键脚本均已整理好,包含环境变量设置、常见异常修复与离线包下载,省心高效。特别是离线或内网环境,提前下载好所有依赖包能极大提升构建成功率。
# 2. 源码包准备与离线编译建议
Superset RPM 打包前需准备好源码包,建议放置于 /opt/modules/bigtop/dl/
目录,首次执行构建任务时系统会自动检测该包是否存在。
当然我们的Bigtop
会自动下载,自动放置该目录
警告
如依赖网络下载,经常会遇到代理、带宽等问题,强烈建议离线环境提前准备好源码包及所有依赖,避免编译中断。
# 3. 一键构建命令与参数说明推荐
在 Bigtop 根目录下,直接执行以下命令即可:
gradle superset-rpm -PparentDir=/usr/bigtop -Dbuildwithdeps=true -PpkgSuffix -d
参数含义如下:
-PparentDir
:指定 Bigtop 项目根路径(建议必填,避免路径异常)-Dbuildwithdeps=true
:同步相关依赖组件,确保完整构建-PpkgSuffix
:自定义包名后缀,可选-d
:输出详细日志,便于定位问题
注意
务必确保当前 shell 环境变量(如 JAVA_HOME
、M2_HOME
等)已正确设置,否则极易在编译中途遇到依赖找不到的报错。
# 4. 编译流程与关键日志解析
执行 gradle 任务后,Bigtop 会自动调用底层脚本,触发 Conda、Node、Python 环境等依赖的自动部署及 Superset 源码编译。你将看到类似下方的详细日志输出:
09:28:51.305 [ERROR] [system.err] + STATUS=0
09:28:51.305 [ERROR] [system.err] + '[' 0 -ne 0 ']'
09:28:51.305 [ERROR] [system.err] + cd superset-4.1.2
09:28:51.305 [ERROR] [system.err] + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
09:28:51.345 [ERROR] [system.err] + exit 0
09:28:51.346 [QUIET] [system.out] Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.XE3knX
09:28:51.347 [ERROR] [system.err] + umask 022
09:28:51.347 [ERROR] [system.err] + cd /opt/modules/bigtop/build/superset/rpm//BUILD
09:28:51.347 [ERROR] [system.err] + cd superset-4.1.2
09:28:51.347 [ERROR] [system.err] + env COMPONENT_VERSION=4.1.2 bash /opt/modules/bigtop/build/superset/rpm/SOURCES/do-component-build
09:28:51.349 [ERROR] [system.err] ++ dirname /opt/modules/bigtop/build/superset/rpm/SOURCES/do-component-build
09:28:51.349 [ERROR] [system.err] + SCRIPT_DIR=/opt/modules/bigtop/build/superset/rpm/SOURCES
09:28:51.349 [ERROR] [system.err] + GH_PROXY=https://ghgo.xyz/
09:28:51.349 [ERROR] [system.err] + source /opt/modules/bigtop/build/superset/rpm/SOURCES/bigtop.bom
09:28:51.349 [ERROR] [system.err] ++ ZOOKEEPER_VERSION=3.5.9
09:28:51.349 [ERROR] [system.err] ++ HADOOP_VERSION=3.3.4
09:28:51.349 [ERROR] [system.err] ++ HBASE_VERSION=2.4.13
09:28:51.349 [ERROR] [system.err] ++ HIVE_VERSION=3.1.3
09:28:51.349 [ERROR] [system.err] ++ TEZ_VERSION=0.10.1
09:28:51.349 [ERROR] [system.err] ++ OOZIE_VERSION=5.2.1
09:28:51.349 [ERROR] [system.err] ++ SOLR_VERSION=8.11.2
09:28:51.349 [ERROR] [system.err] ++ SPARK_VERSION=3.5.5
09:28:51.349 [ERROR] [system.err] ++ FLINK_VERSION=1.17.2
09:28:51.349 [ERROR] [system.err] ++ PHOENIX_VERSION=5.1.2
09:28:51.349 [ERROR] [system.err] ++ BIGTOP_GROOVY_VERSION=2.5.4
09:28:51.349 [ERROR] [system.err] ++ BIGTOP_UTILS_VERSION=3.2.0-SNAPSHOT
09:28:51.349 [ERROR] [system.err] ++ BIGTOP_SELECT_VERSION=3.2.0-SNAPSHOT
09:28:51.349 [ERROR] [system.err] ++ BIGTOP_JSVC_VERSION=1.2.4
09:28:51.349 [ERROR] [system.err] ++ ALLUXIO_VERSION=2.8.0
09:28:51.349 [ERROR] [system.err] ++ KAFKA_VERSION=2.8.1
09:28:51.349 [ERROR] [system.err] ++ YCSB_VERSION=0.17.0
09:28:51.349 [ERROR] [system.err] ++ ZEPPELIN_VERSION=0.10.1
09:28:51.349 [ERROR] [system.err] ++ GPDB_VERSION=5.28.5
09:28:51.349 [ERROR] [system.err] ++ AMBARI_VERSION=2.7.5
09:28:51.349 [ERROR] [system.err] ++ BIGTOP_AMBARI_MPACK_VERSION=2.7.5
09:28:51.349 [ERROR] [system.err] ++ LIVY_VERSION=0.7.1
09:28:51.349 [ERROR] [system.err] ++ RANGER_VERSION=2.4.0
09:28:51.349 [ERROR] [system.err] ++ SQOOP_VERSION=1.4.7
09:28:51.349 [ERROR] [system.err] ++ REDIS_VERSION=7.4.0
09:28:51.349 [ERROR] [system.err] ++ DOLPHINSCHEDULER_VERSION=3.2.2
09:28:51.349 [ERROR] [system.err] ++ DORIS_VERSION=2.1.7
09:28:51.349 [ERROR] [system.err] ++ NIGHTINGALE_VERSION=7.7.2
09:28:51.349 [ERROR] [system.err] ++ CATEGRAF_VERSION=0.4.1
09:28:51.349 [ERROR] [system.err] ++ VICTORIAMETRICS_VERSION=1.109.1
09:28:51.349 [ERROR] [system.err] ++ CLOUDBEAVER_VERSION=24.3.3
09:28:51.349 [ERROR] [system.err] ++ CELEBORN_VERSION=0.5.3
09:28:51.349 [ERROR] [system.err] ++ OZONE_VERSION=1.4.1
09:28:51.349 [ERROR] [system.err] ++ IMPALA_VERSION=4.4.1
09:28:51.349 [ERROR] [system.err] ++ TRINO_VERSION=474
09:28:51.349 [ERROR] [system.err] ++ HUDI_VERSION=1.0.1
09:28:51.349 [ERROR] [system.err] ++ PAIMON_VERSION=1.1.0
09:28:51.349 [ERROR] [system.err] ++ ATLAS_VERSION=2.4.0
09:28:51.349 [ERROR] [system.err] ++ SUPERSET_VERSION=4.1.2
09:28:51.349 [ERROR] [system.err] ++ JDK_VERSION=1.8
09:28:51.349 [ERROR] [system.err] ++ SCALA_VERSION=2.12.13
09:28:51.349 [ERROR] [system.err] + NPM_REGISTRY=https://registry.npmmirror.com/
09:28:51.349 [ERROR] [system.err] + conda create -p ./superset_temp_venv python=3.9.19 nodejs=20 libffi openssl -y -vv
09:28:51.430 [ERROR] [system.err] DEBUG conda.gateways.logging:set_verbosity(231): verbosity set to 2
09:28:51.534 [ERROR] [system.e
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
pip install -r requirements/base.txt
编译日志截屏
# 5. 编译资源消耗与时间评估
Superset 构建期间会拉取大量依赖包,对硬件有一定要求,建议配置如下:
资源 | 推荐规格 |
---|---|
CPU | 4核及以上 |
内存 | 8GB 起步 |
磁盘空间 | 10GB+ |
提示
编译期间请保持网络通畅,否则 Conda/PyPI/NPM 依赖极易超时失败。
# 6. 编译产物与输出目录
当编译成功后,你会在 Bigtop 的 output 目录下获得类似如下 RPM 包:
superset_3_2_0-4.1.2-1.el7.x86_64.rpm
# 7. 关键改造点与后续集成
Superset RPM 包二次开发与适配过程常需涉及如下修改(参考实际业务需求可按需调整):