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

JaneTTR

数据酿造智慧,每一滴都是沉淀!
  • 产品中心

  • 安装与使用

    • Ambari Plus 安装

      • 安装前准备
        • 实施总览
        • Step0—源码包下载与目录准备
        • Step1—系统源与基础工具准备
        • Step2—集群免密登录
        • Step3—主机名解析同步
        • Step4—Chrony 时间同步
        • Step5—Nginx 本地 Yum 文件服务
        • Step6—JDK 双环境准备
        • Step7—MySQL 驱动与本地仓库
          • Step7—MySQL 驱动与本地仓库
          • 安装 MySQL Connector/J
          • RHEL 系生成 Yum 元数据
          • Ubuntu 生成 APT 元数据
          • 所有 RHEL 节点写入本地 Yum 源
          • 所有 Ubuntu 节点写入本地 APT 源
          • 验证仓库可用
          • 常见问题
        • Step8—MariaDB 初始化
        • Step9—AmbariServer 初始化
        • 必须 ambari plus 数据库初始化文件
      • 安装部署
    • 组件安装

    • 开启高可用

    • 权限与安全专题

    • Ambari Plus Monitor

    • 常见问题

  • 发布与支持

  • 会员与访问

目录
Step7—MySQL 驱动与本地仓库
安装 MySQL Connector/J
RHEL 系生成 Yum 元数据
Ubuntu 生成 APT 元数据
所有 RHEL 节点写入本地 Yum 源
所有 Ubuntu 节点写入本地 APT 源
验证仓库可用
常见问题

Step7—MySQL 驱动与本地仓库

# Step7—MySQL 驱动与本地仓库

这一步有两个目标:一是给 Ambari Server 准备 MySQL Connector/J,二是把 /data/modules 变成所有节点都能使用的软件仓库。前者决定 Ambari 能不能连接 MariaDB,后者决定各节点能不能安装 Ambari 和组件包。

# 安装 MySQL Connector/J

这一步只在核心节点 hadoop1.test.com 做。

cd /opt/modules

if [ -f /data/modules/mysql-connector-java-5.1.48.tar.gz ]; then
  sudo cp /data/modules/mysql-connector-java-5.1.48.tar.gz /opt/modules/
else
  sudo curl -fL -o mysql-connector-java-5.1.48.tar.gz \
    https://mirrors.aliyun.com/mysql/Connector-J/mysql-connector-java-5.1.48.tar.gz
fi

sha256sum mysql-connector-java-5.1.48.tar.gz
sudo tar -xzf mysql-connector-java-5.1.48.tar.gz -C /opt/modules
sudo install -D -m 0644 \
  /opt/modules/mysql-connector-java-5.1.48/mysql-connector-java-5.1.48-bin.jar \
  /usr/share/java/mysql-connector-java.jar
1
2
3
4
5
6
7
8
9
10
11
12
13
14

检查文件:

ls -lh /usr/share/java/mysql-connector-java.jar
1

MySQL Connector/J 安装

提示

这里使用 5.1.48 是为了兼容 Ambari 常见 MySQL/MariaDB 初始化流程。不要随手换成 8.x 驱动,除非你确认 Ambari 版本和 JDBC 参数都已适配。离线环境优先使用 /data/modules 里的交付包,并用 SHA256 和包清单对齐。

# RHEL 系生成 Yum 元数据

如果 /data/modules 里放的是 RPM 包,在核心节点执行:

    sudo dnf -y install createrepo_c || sudo yum -y install createrepo
    
    sudo rm -rf /data/modules/repodata
    if command -v createrepo_c >/dev/null 2>&1; then
      sudo createrepo_c /data/modules
    else
      sudo createrepo /data/modules
    fi
    
    curl -I http://hadoop1.test.com/repodata/repomd.xml
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    echo "Ubuntu 使用 APT 元数据,跳到下一节 dpkg-scanpackages。"
    
    1
    // Make sure to add code blocks to your code group

    本地仓库元数据

    # Ubuntu 生成 APT 元数据

    如果 /data/modules 里放的是 DEB 包,在核心节点执行:

      echo "RHEL 系使用 createrepo,不需要执行这一段。"
      
      1
      sudo apt update
      sudo apt install -y dpkg-dev
      
      cd /data/modules
      sudo dpkg-scanpackages . /dev/null | gzip -9c | sudo tee Packages.gz >/dev/null
      
      curl -I http://hadoop1.test.com/Packages.gz
      
      1
      2
      3
      4
      5
      6
      7
      // Make sure to add code blocks to your code group

      # 所有 RHEL 节点写入本地 Yum 源

      在 hadoop1.test.com、hadoop2.test.com、hadoop3.test.com 都执行:

      sudo tee /etc/yum.repos.d/ambari-plus.repo >/dev/null <<'EOF'
      [ambari-plus]
      name=Ambari Plus Local Repository
      baseurl=http://hadoop1.test.com/
      enabled=1
      gpgcheck=0
      EOF
      
      sudo yum clean all
      sudo yum makecache
      sudo yum repolist
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11

      如果系统使用 dnf:

      sudo dnf clean all
      sudo dnf makecache
      sudo dnf repolist
      
      1
      2
      3

      包签名边界

      gpgcheck=0 只适合已经受控的内网离线仓库。生产环境如果有签名体系,建议导入 GPG 公钥并把这里改回 gpgcheck=1。

      # 所有 Ubuntu 节点写入本地 APT 源

      在 hadoop1.test.com、hadoop2.test.com、hadoop3.test.com 都执行:

      sudo tee /etc/apt/sources.list.d/ambari-plus.list >/dev/null <<'EOF'
      deb [trusted=yes] http://hadoop1.test.com/ ./
      EOF
      
      sudo apt update
      apt-cache policy ambari-server
      
      1
      2
      3
      4
      5
      6

      注意

      APT 源路径最后的 ./ 不要漏掉。这个写法表示当前 HTTP 根目录就是一个简单 DEB 仓库。[trusted=yes] 同样只建议用于受控内网离线仓库;如果你已经做了 Release 和签名,应该按标准 APT 签名方式配置。

      # 验证仓库可用

      RHEL 系:

      yum list ambari-server
      yum list ambari-agent
      
      1
      2

      Ubuntu:

      apt-cache policy ambari-server
      apt-cache policy ambari-agent
      
      1
      2

      如果能看到包名和版本,说明本地仓库已经生效。

      # 常见问题

      现象 原因 处理
      repomd.xml 404 没执行 createrepo 重新生成 /data/modules/repodata
      yum repolist 看不到仓库 .repo 文件写错或缓存未刷新 检查 baseurl 后执行 yum clean all
      Ubuntu apt update 报 Release 简单本地源没有 Release 文件 使用 [trusted=yes]
      能访问 HTTP 但找不到包 包格式和仓库类型不匹配 RPM 用 Yum,DEB 用 APT
      只有核心节点可用 工作节点解析不了 hadoop1.test.com 回到 Step3 检查 hosts

      仓库能查到 Ambari 包后,再进入 MariaDB 初始化。

      Step6—JDK 双环境准备
      Step8—MariaDB 初始化

      ← Step6—JDK 双环境准备 Step8—MariaDB 初始化→

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