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
      • 一、效果预览
      • 二、修改位置
      • 三、追加脚本片段
      • 四、完整可替换 postinst
    • [改造]-魔改pom-适配ubuntu22
  • Ambari-Infra

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

[改造]-魔改posinst-适配ubuntu22New

# 一、效果预览

如下图所示,这是修改后的效果:

image-20250814142736772

# 二、修改位置

文件路径: ambari-metrics-assembly/src/main/package/deb/control/postinst

在原有创建 sink jar 软链逻辑后追加用户、组、目录初始化及权限配置,确保安装后 ams 用户可直接启动服务。

# 三、追加脚本片段

# Ensure group hadoop exists
if ! getent group hadoop >/dev/null; then
    groupadd hadoop
fi

# Ensure user ams exists and is part of hadoop group
if ! id ams >/dev/null 2>&1; then
    useradd -g hadoop -m -s /bin/bash ams
fi

# Directories to initialize
RESOURCE_MONITORING_DIR="/usr/lib/python2.6/site-packages/resource_monitoring"
LOG_COLLECTOR="/var/log/ambari-metrics-collector"
LOG_GRAFANA="/var/log/ambari-metrics-grafana"
LOG_MONITOR="/var/log/ambari-metrics-monitor"

RUN_COLLECTOR="/var/run/ambari-metrics-collector"
RUN_GRAFANA="/var/run/ambari-metrics-grafana"
RUN_MONITOR="/var/run/ambari-metrics-monitor"

log_dirs=("${LOG_COLLECTOR}" "${LOG_GRAFANA}" "${LOG_MONITOR}")
run_dirs=("${RUN_COLLECTOR}" "${RUN_GRAFANA}" "${RUN_MONITOR}")

# Batch create, chown, chmod
for dir in "${log_dirs[@]}" "${run_dirs[@]}"; do
    mkdir -p "${dir}"
    chown -R ams:hadoop "${dir}"
    chmod 755 "${dir}"
done

chown -R ams:hadoop "${RESOURCE_MONITORING_DIR}"
chmod -R 755 "${RESOURCE_MONITORING_DIR}"
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

注意

Ubuntu 22.04 默认 Python3,需将 RESOURCE_MONITORING_DIR 调整到实际 Python3 目录。

# 四、完整可替换 postinst

#!/bin/bash
set -e

HADOOP_LINK_NAME="/usr/lib/ambari-metrics-hadoop-sink/ambari-metrics-hadoop-sink.jar"
HADOOP_SINK_JAR="/usr/lib/ambari-metrics-hadoop-sink/${hadoop.sink.jar}"

FLUME_LINK_NAME="/usr/lib/flume/lib/ambari-metrics-flume-sink.jar"
FLUME_SINK_JAR="/usr/lib/flume/lib/${flume.sink.jar}"

KAFKA_LINK_NAME="/usr/lib/ambari-metrics-kafka-sink/ambari-metrics-kafka-sink.jar"
KAFKA_SINK_JAR="/usr/lib/ambari-metrics-kafka-sink/${kafka.sink.jar}"

JARS=(${HADOOP_SINK_JAR} ${FLUME_SINK_JAR} ${KAFKA_SINK_JAR})
LINKS=(${HADOOP_LINK_NAME} ${FLUME_LINK_NAME} ${KAFKA_LINK_NAME})

for index in ${!LINKS[*]}; do
  rm -f "${LINKS[$index]}" || true
  ln -s "${JARS[$index]}" "${LINKS[$index]}" || true
done

# 用户组与目录初始化
if ! getent group hadoop >/dev/null; then
  groupadd hadoop
fi

if ! id ams >/dev/null 2>&1; then
  useradd -g hadoop -m -s /bin/bash ams
fi

RESOURCE_MONITORING_DIR="/usr/lib/python2.6/site-packages/resource_monitoring"
LOG_COLLECTOR="/var/log/ambari-metrics-collector"
LOG_GRAFANA="/var/log/ambari-metrics-grafana"
LOG_MONITOR="/var/log/ambari-metrics-monitor"

RUN_COLLECTOR="/var/run/ambari-metrics-collector"
RUN_GRAFANA="/var/run/ambari-metrics-grafana"
RUN_MONITOR="/var/run/ambari-metrics-monitor"

log_dirs=("${LOG_COLLECTOR}" "${LOG_GRAFANA}" "${LOG_MONITOR}")
run_dirs=("${RUN_COLLECTOR}" "${RUN_GRAFANA}" "${RUN_MONITOR}")

for dir in "${log_dirs[@]}" "${run_dirs[@]}"; do
  mkdir -p "${dir}"
  chown -R ams:hadoop "${dir}"
  chmod 0755 "${dir}"
done

if [ -d "${RESOURCE_MONITORING_DIR}" ]; then
  chown -R ams:hadoop "${RESOURCE_MONITORING_DIR}"
  chmod -R 0755 "${RESOURCE_MONITORING_DIR}"
fi

exit 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
#Ambari-Metrics#Ubuntu22.04#编译#源码#安装#配置
Ambari-Metrics-Ubuntu下源码编译指南
[改造]-魔改pom-适配ubuntu22

← Ambari-Metrics-Ubuntu下源码编译指南 [改造]-魔改pom-适配ubuntu22→

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