ambari 2.7.6源码编译指南

发布时间 - 2025-07-10 00:00:00    点击率:

在centos 7.6上使用maven 3.6.3进行ambari 2.7.6源码编译的指南

由于编译过程中需要的某些JAR包难以下载,本文提供了一个专门用于Ambari编译的Maven仓库。您只需将该仓库替换到您的.m2/repository目录中即可。

提供的仓库文件:repository.tar.gz

提取码:ambari

软件安装

yum install -y wget git psutils python-devel rpm-build java-1.8.0-openjdk-devel

搭建HTTP服务

yum install httpd
systemctl enable httpd
systemctl start httpd

提前下载并放置安装包

请提前下载以下安装包,并将其放置在HTTP服务的/var/www/html/compile-ambari目录下(新建compile-ambari目录):

  • hadoop-3.1.1.tar.gz
  • hbase-2.0.2.tar.gz
  • grafana-6.7.4.linux-amd64.tar.gz
  • apache-phoenix-5.0.0-HBase-2.0-bin.tar.gz

源码下载与修改

wget https://mirrors.tuna.tsinghua.edu.cn/apache/ambari/ambari-2.7.6/apache-ambari-2.7.6-src.tar.gz
tar zxvf apache-ambari-2.7.6-src.tar.gz
cd apache-ambari-2.7.6-src

修改主目录下的pom文件,添加HDP仓库:


    
        true
        always
        warn
    
    
        false
        never
        fail
    
    HDPReleases
    HDP Releases
    https://repo.hortonworks.com/content/repositories/releases/
    default

修改ambari-metrics/pom.xml文件,将hbase、hadoop以及grafana的下载地址替换为本地地址:

http://localhost/compile-ambari/hbase-2.0.2-bin.tar.gz
http://localhost/compile-ambari/hadoop-3.1.1.tar.gz
http://localhost/compile-ambari/grafana-6.7.4.linux-amd64.tar.gz
http://localhost/compile-ambari/apache-phoenix-5.0.0-HBase-2.0-bin.tar.gz

执行编译

mvn clean install rpm:rpm -DskipTests

完成上述步骤后,您将得到编译结果:

问题与解决方法

如果在编译过程中遇到如下问题:

[INFO] [2/4] Fetching packages...
[ERROR] warning fsevents@2.3.2: The platform "linux" is incompatible with this module.
[INFO] info "fsevents@2.3.2" is an optional dependency and failed compatibility check. Excluding it from installation.
[INFO] [3/4] Linking dependencies...
[INFO] [4/4] Building fresh packages...
[INFO] info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
[ERROR] error /root/ambari/ambari-admin/src/main/resources/ui/admin-web/node_modules/phantomjs: Command failed.
[ERROR] Exit code: 1
[ERROR] Command: sh
[ERROR] Arguments: -c node install.js
[ERROR] Directory: /root/ambari/ambari-admin/src/main/resources/ui/admin-web/node_modules/phantomjs
[ERROR] Output:
[ERROR] PhantomJS not found on PATH
[ERROR] Download already available at /tmp/npm_config_tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2
[ERROR] Verified checksum of previously downloaded file
[ERROR] Extracting tar contents (via spawned process)
[ERROR] Removing /root/ambari/ambari-admin/src/main/resources/ui/admin-web/node_modules/phantomjs/lib/phantom
[ERROR] Copying extracted folder /tmp/npm_config_tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2-extract-1639887716005/phantomjs-2.1.1-linux-x86_64 -> /root/ambari/ambari-admin/src/main/resources/ui/admin-web/node_modules/phantomjs/lib/phantom
[ERROR] Install exited unexpectedly
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] Ambari Main 2.7.6.0.0 .............................. SUCCESS [  3.717 s]
[INFO] Apache Ambari Project POM 2.7.6.0.0 ................ SUCCESS [  0.195 s]
[INFO] Ambari Web 2.7.6.0.0 ............................... SUCCESS [01:43 min]
[INFO] Ambari Views 2.7.6.0.0 ............................. SUCCESS [  6.583 s]
[INFO] Ambari Admin View 2.7.6.0.0 ........................ FAILURE [ 47.472 s]
[INFO] ambari-utility 1.0.0.0-SNAPSHOT .................... SKIPPED
[INFO] ambari-metrics 2.7.6.0.0 ........................... SKIPPED
[INFO] Ambari Metrics Common 2.7.6.0.0 .................... SKIPPED

请将/tmp/npm_config_tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2-extract-1639887716005/phantomjs-2.1.1-linux-x86_64目录下的所有内容复制到/root/ambari/ambari-admin/src/main/resources/ui/admin-web/node_modules/phantomjs/lib/phantom目录下,然后重新执行编译命令。

本文由大数据到人工智能博主「xiaozhch5」原创,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://www./link/6f5e6653c2100f36ef017088363ea359


# linux  # python  # centos  # git  # apache  # ai  # 解决方法  # html  # maven  # xml  # var  # hbase  # hadoop  # ambari  # 人工智能  # http  # https  # ui  # grafana  # 目录下  # 过程中  # 安装包  # 您的  # 下载地址  # 为本  # 请将  # 您将  # 所有内容 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程  Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载  Laravel怎么在Controller之外的地方验证数据  JS弹性运动实现方法分析  Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】  零服务器AI建站解决方案:快速部署与云端平台低成本实践  ,交易猫的商品怎么发布到网站上去?  HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】  Laravel如何实现用户密码重置功能?(完整流程代码)  Laravel如何与Inertia.js和Vue/React构建现代单页应用  Laravel怎么做数据加密_Laravel内置Crypt门面的加密与解密功能  Laravel如何将应用部署到生产服务器_Laravel生产环境部署流程  Laravel如何使用Seeder填充数据_Laravel模型工厂Factory批量生成测试数据【方法】  Laravel如何创建自定义Facades?(详细步骤)  JavaScript常见的五种数组去重的方式  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  Midjourney怎样加参数调细节_Midjourney参数调整技巧【指南】  浅谈Javascript中的Label语句  如何在HTML表单中获取用户输入并用JavaScript动态控制复利计算循环  Laravel中的withCount方法怎么高效统计关联模型数量  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  Linux系统命令中screen命令详解  实现点击下箭头变上箭头来回切换的两种方法【推荐】  1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤  Laravel怎么判断请求类型_Laravel Request isMethod用法  百度浏览器ai对话怎么关 百度浏览器ai聊天窗口隐藏  html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】  Java解压缩zip - 解压缩多个文件或文件夹实例  Laravel如何使用Blade组件和插槽?(Component代码示例)  JS碰撞运动实现方法详解  Internet Explorer官网直接进入 IE浏览器在线体验版网址  Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法  Java类加载基本过程详细介绍  为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】  Laravel如何与Pusher实现实时通信?(WebSocket示例)  活动邀请函制作网站有哪些,活动邀请函文案?  UC浏览器如何设置启动页 UC浏览器启动页设置方法  Android Socket接口实现即时通讯实例代码  Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能  如何自定义建站之星模板颜色并下载新样式?  Python正则表达式进阶教程_复杂匹配与分组替换解析  制作企业网站建设方案,怎样建设一个公司网站?  Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程  Laravel怎么实现支付功能_Laravel集成支付宝微信支付  laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  VIVO手机上del键无效OnKeyListener不响应的原因及解决方法  bootstrap日历插件datetimepicker使用方法  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】