TT Bigdata TT Bigdata
首页
GitHub (opens new window)
JaneTTR

JaneTTR

数据酿造智慧,每一滴都是沉淀!
  • 报错解决

  • 系统适配

    • Kylin V10系列
    • Rocky系列
    • Ubuntu系列
      • 案例-首次编译环境处理

      • 案例-Bigtop适配Debian

      • 案例-安装中遇到的问题

      • 案例-编译高级功能

        • 解读-开启Hadoop下ISAL-L和PMDK功能
        • 解决-ISAL-L和PMDK功能完整环境包
          • 一、背景说明
          • 二、完整环境包安装命令
          • 三、编译命令示例(开启 Native 特性)
            • 参数解析
    • Centos系列
    • OpenEuler系列
  • 监控与调优

  • BUG临时处理
  • 实验室

  • 运维资料
  • 系统适配
  • Ubuntu系列
  • 案例-编译高级功能
JaneTTR
2025-07-16
目录
一、背景说明
二、完整环境包安装命令
三、编译命令示例(开启 Native 特性)
参数解析

解决-ISAL-L和PMDK功能完整环境包Ubuntu22专用

# 一、背景说明

在 Ubuntu 22.04 下编译 Bigtop 集成的大数据组件(如 Hadoop 3.3.4、HBase、ZooKeeper 等)时,如果需要开启 native 特性(如 OpenSSL、ISA-L、PMDK、Zstd、Snappy 等),系统必须具备完整的编译工具链与开发库。

缺少任意一项依赖都会导致编译过程反复中断、重新构建。为了减少不必要的反复调试,整理出以下“完整环境包”安装清单, 一次性满足编译条件。

适用范围

本清单仅适用于 Ubuntu 22.04,其他版本(如 Debian、Ubuntu 20.04)可能存在包名或版本差异,请根据实际环境调整。

# 二、完整环境包安装命令

直接执行以下命令即可批量安装全部必需依赖:

apt-get install -y \
    asciidoc \
    autoconf \
    autoconf-archive \
    automake \
    bzip2 \
    build-essential \
    cmake \
    curl \
    debhelper \
    devscripts \
    dh-make \
    fakeroot \
    git \
    iproute2 \
    less \
    libbz2-dev \
    libcppunit-dev \
    libfuse-dev \
    libgsasl-dev \
    libisal-dev \
    libkrb5-dev \
    liblzo2-dev \
    libpmem-dev \
    libprotobuf-dev \
    libprotoc-dev \
    libsnappy-dev \
    libsasl2-dev \
    libssl-dev \
    libtirpc-dev \
    libtool \
    libxml2-dev \
    libzip-dev \
    libzstd-dev \
    lintian \
    locales \
    lsof \
    m4 \
    net-tools \
    openssh-client \
    openssh-server \
    patch \
    pkg-config \
    protobuf-compiler \
    python3 \
    python3-pip \
    rsync \
    sharutils \
    sudo \
    tar \
    unzip \
    vim \
    wget \
    zlib1g-dev

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

说明

  • 核心工具链:build-essential、cmake、autoconf、automake、libtool
  • 压缩/加密库:libzstd-dev、libsnappy-dev、libbz2-dev、libssl-dev
  • 网络/安全协议:libsasl2-dev、libgsasl-dev、libkrb5-dev
  • 存储优化:libisal-dev、libpmem-dev、liblzo2-dev
  • 协议编译:protobuf-compiler、libprotobuf-dev、libprotoc-dev

# 三、编译命令示例(开启 Native 特性)

依赖安装完成后,可直接在 Hadoop 源码目录执行以下命令构建启用 native 特性的分发包:

mvn \
  -Dsnappy.prefix=x \
  -Dbundle.snappy=true \
  -Dsnappy.lib=/usr/lib/x86_64-linux-gnu \
  -Pdist -Pnative -Psrc -Pyarn-ui -Dtar \
  -Dzookeeper.version=3.5.9 \
  -Dleveldbjni.group=org.fusesource.leveldbjni \
  -DskipTests -DskipITs \
  -Drequire.openssl=true \
  -Drequire.isal=true \
  -Drequire.pmdk=true \
  -DProtobuf_PROTOC_EXECUTABLE=/usr/bin/protoc \
  -DProtobuf_LIBRARY=/usr/lib/x86_64-linux-gnu/libprotobuf.so \
  -DProtobuf_LITE_LIBRARY=/usr/lib/x86_64-linux-gnu/libprotobuf-lite.so \
  -DProtobuf_PROTOC_LIBRARY=/usr/lib/x86_64-linux-gnu/libprotoc.so \
  -Drequire.zstd=true \
  install \
  -Divy.home=/root/.ivy2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

# 参数解析

参数 说明
-Pdist -Pnative 开启分发包构建并编译 native 代码
-Drequire.openssl=true 启用 OpenSSL 支持
-Drequire.isal=true 启用 ISA-L 支持
-Drequire.pmdk=true 启用 PMDK 持久化内存库
-Drequire.zstd=true 启用 Zstd 压缩支持
-DProtobuf_* 显式指定 Protobuf 可执行文件和库路径,防止版本冲突
-Dbundle.snappy=true 将 Snappy 库打包到 native 产物中
#Ubuntu#国产化适配#Bigtop-select#源码编译#源码解析
解读-开启Hadoop下ISAL-L和PMDK功能
Centos系列

← 解读-开启Hadoop下ISAL-L和PMDK功能 Centos系列→

最近更新
01
当前版本 2026/08
08-29
02
把 Ambari Server HA 稳稳地跑起来
08-17
03
从一次启用操作追到主备就绪
08-17
更多文章>
Theme by Vdoing | Copyright © 2017-2026 JaneTTR | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式