【支持Ubuntu22】Ambari3.0.0+Bigtop3.2.0——Step1—基础环境准备

发布于:2025-07-30 ⋅ 阅读:(25) ⋅ 点赞:(0)

注意事项
本文基于 Ubuntu 22.04 LTS 适配,部分包名和配置与 RedHat/Rocky/CentOS 有差异,请勿直接复用其它系统命令。如遇疑难欢迎在
VX 或 QQ 群与作者交流。

附录:完整内容和源代码下载请参照

https://doc.janettr.com/

在这里插入图片描述

1. 修改所有节点主机名 🖥️

在多节点集群环境下,主机名规范化不仅能提高系统可读性,还能在自动化批量部署和故障排查中带来极大便利。建议命名风格统一且易辨识。

IP 地址 主机名
192.168.3.1 dev1
192.168.3.2 dev2
192.168.3.3 dev3
# 192.168.3.1
sudo hostnamectl set-hostname dev1

# 192.168.3.2
sudo hostnamectl set-hostname dev2

# 192.168.3.3
sudo hostnamectl set-hostname dev3

WX20250313-113002@2x

主机名更改仅影响当前节点,如需集群内主机名互通,务必同步维护 /etc/hosts 文件,并在所有节点写入完整的 IP
与主机名映射。这样即使没有独立 DNS,也能保障服务部署和节点通信。

192.168.3.1 dev1
192.168.3.2 dev2
192.168.3.3 dev3

这样即使 DNS 异常,节点间依然可直接用主机名互通,极大提高了集群可靠性。

2. 配置国内 Ubuntu 22.04 APT 镜像源 🇨🇳

系统源的速度和稳定性直接影响到后续所有依赖包的获取。对于企业或离线集群,建议优先使用自建私服或本地镜像,极大提升安装效率并规避“包丢失”风险。

image-20250716165744540

2.1 推荐:自建 apt 私服或局域网镜像仓库

适合大规模集群部署或离线场景,所有节点统一指向一个内网镜像源,彻底规避外网依赖和包不可控风险。
image-20250716165834447

deb [trusted=yes] http://172.20.0.2:8081/repository/ubuntu22-tsinghua/ jammy main restricted universe multiverse
deb [trusted=yes] http://172.20.0.2:8081/repository/ubuntu22-tsinghua/ jammy-updates main restricted universe multiverse
deb [trusted=yes] http://172.20.0.2:8081/repository/ubuntu22-tsinghua/ jammy-security main restricted universe multiverse
deb [trusted=yes] http://172.20.0.2:8081/repository/ubuntu22-tsinghua/ jammy-backports main restricted universe multiverse

2.2 使用公有云镜像仓库

如在公网环境,可直接替换为阿里云/清华/中科大等镜像源,更适合云主机和测试环境。

image-20250716165637405

deb https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse

镜像选择优先顺序建议:企业内网私服 > 公有云国内镜像。如有条件推荐配置公司总部 apt 仓库做全网统一管控。

更换源后务必执行:

sudo apt update

建议同步配置主流组件源,否则部分依赖包安装会提示“未找到”。

3. 批量安装基础系统工具 🔧

大数据平台、Ambari/Bigtop 等生态对系统依赖包要求极高,不仅涉及开发编译,还包含文档构建、认证、压缩、网络、同步等多方面。

3.1 推荐批量安装命令(Ubuntu 22.04专用)

sudo apt update && sudo apt -y install \
  asciidoc autoconf automake libbz2-dev cmake libcppunit-dev \
  libsasl2-dev curl docbook2x fuse libfuse-dev libfuse2 \
  gcc g++ git iproute2 libkrb5-dev less libtirpc-dev libtool \
  libxml2-dev lsof liblzo2-dev make net-tools openssh-server \
  libssl-dev patch procps protobuf-compiler python3 lsb-release \
  rsync libsnappy-dev sudo tar unzip vim wget which xmlto zlib1g-dev

3.2 主要依赖简析

工具/库 作用与场景
gcc/g++ 编译 C/C++ 源码,Hadoop/Spark/HBase 均需
make/cmake 兼容绝大多数开源项目的构建系统
libssl-dev 各类安全传输/证书/组件认证
python3 现代脚本与大数据生态依赖
protobuf-compiler Hadoop/Yarn/Tez 通信协议编解码
libbz2-dev/libsnappy-dev/liblzo2-dev 各类数据压缩依赖,提升数据存取与传输效率
libxml2-dev/asciidoc/xmlto/docbook2x XML 解析及文档生成,便于文档自动化
libsasl2-dev/libkrb5-dev Kerberos 安全认证(Hadoop/Yarn常见)
fuse/libfuse-dev/libfuse2 支持分布式挂载与云盘文件系统
libcppunit-dev 组件源码单元测试需要
lsb-release 兼容性信息/部分工具依赖
lsof/net-tools/iproute2 网络监控与故障定位
openssh-server 远程管理与自动化部署
rsync 批量分发与高效同步
git/wget/curl/tar/unzip 版本管理、下载与解压缩
sudo/which/less 系统级运维与管理
libtirpc-dev/libtool/procps 低层 RPC、编译与进程管理

部分特殊包如 docbook2xlibcppunit-dev 可能不是所有业务都要,但在自定义编译大数据组件、自动化测试、文档流水线等场景极为常用。建议全量装齐,无后顾之忧。


网站公告

今日签到

点亮在社区的每一天
去签到