TT Bigdata TT Bigdata
首页
  • 部署专题

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

    • 安装教程
    • 魔改分享
  • 版本专题

    • 更新说明
    • BUG临时处理
  • Ambari-Env

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

    • 专区—Ambari
    • 专区—Bigtop-官方组件
    • 专区—Bigtop-扩展组件
  • 报错解决

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

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

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

    • Redis集成教学
    • Dolphin集成教学
    • Doris集成教学
    • 持续整理...
  • 核心代码

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

    • Rocky系列
    • Ubuntu系列
  • Grafana监控方案

    • Ambari-Metrics插件
    • Infinity插件
  • 支持&共建

    • 蓝图愿景
    • 合作共建
登陆
GitHub (opens new window)

JaneTTR

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

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

    • 安装教程
    • 魔改分享
  • 版本专题

    • 更新说明
    • BUG临时处理
  • Ambari-Env

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

    • 专区—Ambari
    • 专区—Bigtop-官方组件
    • 专区—Bigtop-扩展组件
  • 报错解决

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

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

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

    • Redis集成教学
    • Dolphin集成教学
    • Doris集成教学
    • 持续整理...
  • 核心代码

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

    • Rocky系列
    • Ubuntu系列
  • Grafana监控方案

    • Ambari-Metrics插件
    • Infinity插件
  • 支持&共建

    • 蓝图愿景
    • 合作共建
登陆
GitHub (opens new window)
  • Ambari

  • Ambari-Metrics

    • Ambari-Metrics 环境包高速下载
    • Ambari-Metrics-Redhat下源码编译指南
    • [改造]-魔改pom-适配rocky8
      • 一、背景说明
      • 二、修改目标
      • 三、修改位置
      • 四、修改前后代码对比
      • 五、完整修改片段示例
      • 六、改造效果
    • Ambari-Metrics-Ubuntu下源码编译指南
    • [改造]-魔改posinst-适配ubuntu22
    • [改造]-魔改pom-适配ubuntu22
  • Ambari-Infra

  • 组件编译-Ambari
  • Ambari-Metrics
JaneTTR
2025-08-10
目录

[改造]-魔改pom-适配rocky8

# 一、背景说明

在 Rocky Linux 8 上适配 Ambari-Metrics(特别是 ambari-metrics-monitor 组件)时,官方 pom.xml 的 RPM 打包配置中显式声明了以下依赖:


<require>${python.ver}</require>
<require>gcc</require>
<require>${python.devel}</require>
1
2
3
4

在某些环境(尤其是企业内网或精简安装)中,这些依赖包可能并未预先安装,RPM 会在安装阶段直接报错并中止。

# 二、修改目标

通过在 pom.xml 中注释或删除这三项 <require> 声明,让 RPM 安装时不再强制依赖 Python 版本、GCC 及 Python 开发包,而是由运维人员在需要时手动安装,避免无关阻塞。

# 三、修改位置

文件路径:

ambari-metrics-assembly/pom.xml
1

定位到 ambari-metrics-monitor 的 <execution> 配置块,在 <requires> 节点内移除三条依赖声明:

image-20250814163602364

# 四、修改前后代码对比

修改前(原配置)


<requires>
    <require>${python.ver}</require>
    <require>gcc</require>
    <require>${python.devel}</require>
</requires>
1
2
3
4
5
6

修改后(精简依赖)


<requires>
    <!-- <require>${python.ver}</require> -->
    <!-- <require>gcc</require> -->
    <!-- <require>${python.devel}</require> -->
</requires>
1
2
3
4
5
6

这样处理后,ambari-metrics-monitor 的 RPM 包仍可正常构建,但安装时不会因为缺少这些包而报错。

# 五、完整修改片段示例


<execution>
    <id>ambari-metrics-monitor</id>
    <!-- unbinds rpm creation from maven lifecycle -->
    <phase>package</phase>
    <goals>
        <goal>rpm</goal>
    </goals>
    <configuration>
        <name>ambari-metrics-monitor</name>
        <group>Development</group>
        <needarch>x86_64</needarch>
        <autoRequires>false</autoRequires>
        <requires>
            <!-- <require>${python.ver}</require> -->
            <!-- <require>gcc</require> -->
            <!-- <require>${python.devel}</require> -->
        </requires>
        <preremoveScriptlet>
            <scriptFile>${monitor.dir}/src/main/package/rpm/preremove.sh</scriptFile>
            <fileEncoding>utf-8</fileEncoding>
        </preremoveScriptlet>
        <mappings>
            <!-- 此处省略 mappings 定义,保持原样 -->
        </mappings>
    </configuration>
</execution>
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

# 六、改造效果

经过改造后,在 Rocky8 上安装时,如果环境未提前安装 Python 或 GCC,不会立即中断,而是提示缺少相关功能时由管理员自行决定是否安装。

下图为 Rocky8 环境中原始安装报错截图:

ba51f8122c26e9bccdeb7d90c9420f43

改造后,安装过程可顺利进行,不再因 Requires: pythonX 等依赖阻塞。

#Ambari-Metrics#Rocky8#编译#源码#安装#配置
Ambari-Metrics-Redhat下源码编译指南
Ambari-Metrics-Ubuntu下源码编译指南

← Ambari-Metrics-Redhat下源码编译指南 Ambari-Metrics-Ubuntu下源码编译指南→

最近更新
01
[/metrics/aggregated] — 聚合数据范围 检查点
09-19
02
[/metrics] — 反向分析接口参数 请求抓包
09-17
03
[/metrics] — 普通指标写入方法 POST
09-17
更多文章>
Theme by Vdoing | Copyright © 2017-2025 JaneTTR | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式