TT Bigdata TT Bigdata
首页
  • 部署专题

    • 常规安装
    • 一键部署
  • 组件安装

    • 常规&高可用
  • 版本专题

    • 更新说明
  • Ambari-Env

    • 环境准备
    • 开始使用
  • 组件编译

    • 专区—Ambari
    • 专区—Bigtop
  • 报错解决

    • 专区—Ambari
    • 专区—Bigtop
  • 其他技巧

    • Maven镜像加速
    • Gradle镜像加速
    • Bower镜像加速
    • 虚拟环境思路
    • R环境安装+一键安装脚本
    • Ivy配置私有镜像仓库
    • Node.js 多版本共存方案
    • Ambari Web本地启动
    • Npm镜像加速
    • PostgreSQL快速安装
    • Temurin JDK 23快速安装
  • 成神之路

    • 专区—Ambari
    • 专区—Bigtop
  • 集成案例

    • Redis集成教学
    • Dolphin集成教学
    • Doris集成教学
    • 持续整理...
  • 模板代码

    • 各类组件
    • 通用模板
  • 国产化&其他系统

    • Centos系列
    • Kylin系列
    • OpenEuler系列
    • Rocky系列
    • Ubuntu系列
  • 生产调优

    • 组件调优指南
    • 1v1指导调优
  • 定制开发

    • 组件版本定制
    • 样式风格定制
  • 蓝图愿景
  • 技术支持
  • 合作共建
GitHub (opens new window)

JaneTTR

数据酿造智慧,每一滴都是沉淀!
首页
  • 部署专题

    • 常规安装
    • 一键部署
  • 组件安装

    • 常规&高可用
  • 版本专题

    • 更新说明
  • Ambari-Env

    • 环境准备
    • 开始使用
  • 组件编译

    • 专区—Ambari
    • 专区—Bigtop
  • 报错解决

    • 专区—Ambari
    • 专区—Bigtop
  • 其他技巧

    • Maven镜像加速
    • Gradle镜像加速
    • Bower镜像加速
    • 虚拟环境思路
    • R环境安装+一键安装脚本
    • Ivy配置私有镜像仓库
    • Node.js 多版本共存方案
    • Ambari Web本地启动
    • Npm镜像加速
    • PostgreSQL快速安装
    • Temurin JDK 23快速安装
  • 成神之路

    • 专区—Ambari
    • 专区—Bigtop
  • 集成案例

    • Redis集成教学
    • Dolphin集成教学
    • Doris集成教学
    • 持续整理...
  • 模板代码

    • 各类组件
    • 通用模板
  • 国产化&其他系统

    • Centos系列
    • Kylin系列
    • OpenEuler系列
    • Rocky系列
    • Ubuntu系列
  • 生产调优

    • 组件调优指南
    • 1v1指导调优
  • 定制开发

    • 组件版本定制
    • 样式风格定制
  • 蓝图愿景
  • 技术支持
  • 合作共建
GitHub (opens new window)
  • 准备阶段

  • 理解packages.gradle

  • 理解bigtop.bom

    • Bigtop 中组件代码管理解读
    • Bigtop 添加新的组件
      • 一、整体说明
      • 二、第一步:配置组件信息
        • 📌 Hadoop 示例
      • 三、第二步:执行组件源码下载
        • 📌 Hadoop 示例
      • 四、第三步:检查下载结果
      • 五、通用模板结构
  • Hadoop编译

  • Flink编译

  • Spark编译

  • Atlas编译

  • Superset编译

  • Zookeeper编译

  • Hbase编译

  • Hive编译

  • Kafka编译

  • Solr编译

  • Tez编译

  • Zeppelin编译

  • 组件编译-Bigtop
  • 理解bigtop.bom
JaneTTR
2022-12-18
目录

Bigtop 添加新的组件

# 一、整体说明

在 Bigtop 构建体系中,所有组件的源码都应在构建前缓存至 bigtop/dl/ 目录。这个机制确保构建过程中无需频繁联网,提升稳定性。

要实现这套流程,我们需要完成两个关键动作:

  1. 在 bigtop.bom 中添加组件定义;
  2. 执行对应的 gradle <组件名>-download 命令进行下载。

# 二、第一步:配置组件信息

以 Paimon 为例,我们在 bigtop.bom 文件的 components {} 块中添加以下内容:

'paimon' {
    name = 'paimon'
    rpm_pkg_suffix = "_" + bigtop.base_version.replace(".", "_")
    relNotes = 'Paimon v1.1.0'
    version { base = '1.1.0'; pkg = base; release = 1 }
    tarball {
        source = "release-${version.base}.tar.gz"
        destination = "${name}-${version.base}.tar.gz"
    }
    url {
        site = bigtop.gh_proxy + "https://github.com/apache/paimon/archive/refs/tags/"
        archive = site
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14

说明

关键字段为 source 和 destination,分别表示从远程仓库拉取的文件名和在本地 bigtop/dl/ 中保存的文件名。

# 📌 Hadoop 示例

如果你想下载的是 Hadoop 源码,可使用如下配置:

'hadoop' {
    name = 'hadoop'
    rpm_pkg_suffix = "_" + bigtop.base_version.replace(".", "_")
    relNotes = 'Apache Hadoop'
    version { base = '3.3.4'; pkg = base; release = 1 }
    tarball {
        destination = "${name}-${version.base}.tar.gz"
        source = "${name}-${version.base}-src.tar.gz"
    }
    url {
        download_path = "/hadoop/common/hadoop-${version.base}"
        site = "${apache.APACHE_MIRROR}/${download_path}"
        archive = "${apache.APACHE_ARCHIVE}/${download_path}"
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

# 三、第二步:执行组件源码下载

# 📌 Hadoop 示例

要下载 Hadoop 的源码包,只需执行:

gradle hadoop-download
1

下载成功后文件路径为:

dl/hadoop-3.3.4.tar.gz
1

下载成功日志如下:

执行 gradle 下载命令

# 四、第三步:检查下载结果

你可以直接进入 output/dl/ 目录,查看是否生成了指定的源码包:

dl 目录结构

注意

如果文件已存在,Bigtop 会默认跳过下载并直接使用,除非你手动删除或强制清理缓存。

# 五、通用模板结构

如需添加其他 GitHub 项目的组件,可参考以下结构模板:

'你的组件名' {
    name = '你的组件名'
    version { base = 'X.Y.Z'; pkg = base; release = 1 }
    tarball {
        source = "release-${version.base}.tar.gz"
        destination = "${name}-${version.base}.tar.gz"
    }
    url {
        site = bigtop.gh_proxy + "https://github.com/your-org/your-project/archive/refs/tags/"
        archive = site
    }
}
1
2
3
4
5
6
7
8
9
10
11
12

如不使用 GitHub,也可将 site 替换为 Apache 官方镜像、私服等。

#Bigtop#组件新增#源码下载
Bigtop 中组件代码管理解读
Hadoop_3.3.4 编译实战

← Bigtop 中组件代码管理解读 Hadoop_3.3.4 编译实战→

最近更新
01
Pandoc 缺失导致 SparkR 构建失败
06-08
02
Cyrus SASL/GSASL 缺失解决
06-07
03
Hadoop_3.3.4 编译实战 1.0.0+
06-06
更多文章>
Theme by Vdoing | Copyright © 2017-2025 JaneTTR | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式