Ambari 源码编译及编译问题的解决

Ambari 源码编译及编译问题的解决

编译

想要编译最新的代码,则直接参考官网的教程即可:主要有一下命令(以版本2.7.1为例):

wget http://www.apache.org/dist/ambari/ambari-2.7.1/apache-ambari-2.7.1-src.tar.gz (use the suggested mirror from above)
tar xfvz apache-ambari-2.7.1-src.tar.gz
cd apache-ambari-2.7.1-src
mvn versions:set -DnewVersion=2.7.1.0.0

pushd ambari-metrics
mvn versions:set -DnewVersion=2.7.1.0.0
popd

mvn -B clean install rpm:rpm -DnewVersion=2.7.1.0.0 -DbuildNumber=90430db08a5f543a97d97918cf5f711f2786ad8a \
-DskipTests -Dpython.ver="python >= 2.6" 

Ambari官网安装指南

问题解决

添加命令

按照自己的经验,想要开官网的指南想编译成功几乎是不可能的。
所以首先 在某一步出现问题之后需要知道编译不需要重新开始,只需要在失败的地方开始就行,比如在ambari-metrics失败了,解决问题之后,可以用一下命令开始:

mvn -B  install rpm:rpm -DnewVersion=2.7.1.0.0 -DbuildNumber=90430db08a5f543a97d97918cf5f711f2786ad8a \
-Dpython.ver="python >= 2.6" \
-rf :ambari-metrics

需要注意的是将clean 去掉。

有一篇比较不错的相关文章:
Ambari编译问题解决 里面列出了好多常见的错误情况。
以我自己的经验在命令行中添加一些命令可以防止两个错误:

mvn -B clean install rpm:rpm -DnewVersion=2.7.1.0.0 -DbuildNumber=90430db08a5f543a97d97918cf5f711f2786ad8a \
-DskipTests -Dpython.ver="python >= 2.6" \
-Dcheckstyle.skip \
-Drat.skip=true 

替换大文件的链接

在编译 ambari-metrics的有Hadoop和hbase几个大文件需要下载,我们可以自己下载号,修改pom.xml对应的链接即可:
进入ambari-metrics目录:
修改pom.xml为

 <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <python.ver>python &gt;= 2.6</python.ver>
    <deb.python.ver>python (&gt;= 2.6)</deb.python.ver>
    <!--TODO change to HDP URL-->
    <hbase.tar>http://192.168.56.1/hbase-2.0.0.3.0.0.0-1634-bin.tar.gz</hbase.tar>
    <hbase.folder>hbase-2.0.0.3.0.0.0-1634</hbase.folder>
    <hadoop.tar>http://192.168.56.1/hadoop-3.1.0.3.0.0.0-1634.tar.gz</hadoop.tar>
    <hadoop.folder>hadoop-3.1.0.3.0.0.0-1634</hadoop.folder>
    <grafana.folder>grafana-2.6.0</grafana.folder>
    <grafana.tar>http://192.168.56.1/grafana-2.6.0.linux-x64.tar.gz</grafana.tar>
    <phoenix.tar>http://192.168.56.1/phoenix-5.0.0.3.0.0.0-1634.tar.gz</phoenix.tar>
    <phoenix.folder>phoenix-5.0.0.3.0.0.0-1634</phoenix.folder>
    <resmonitor.install.dir>/usr/lib/python2.6/site-packages/resource_monitoring</resmonitor.install.dir>
    <powermock.version>1.6.2</powermock.version>
    <distMgmtSnapshotsId>apache.snapshots.https</distMgmtSnapshotsId>
    <distMgmtSnapshotsName>Apache Development Snapshot Repository</distMgmtSnapshotsName>
    <distMgmtSnapshotsUrl>https://repository.apache.org/content/repositories/snapshots</distMgmtSnapshotsUrl>
    <distMgmtStagingId>apache.staging.https</distMgmtStagingId>
    <distMgmtStagingName>Apache Release Distribution Repository</distMgmtStagingName>
    <distMgmtStagingUrl>https://repository.apache.org/service/local/staging/deploy/maven2</distMgmtStagingUrl>
    <fasterxml.jackson.version>2.9.5</fasterxml.jackson.version>
  </properties>

我这是下载好,放在了自己的http服务下。

科学上网

这个工程需要非常非常多的依赖,中间的rpm编译结果还需要很大的中间存储,首先得保证磁盘空间够。还有就是依赖下载慢或者下载不下来,那这时候就需要科学上网,并需要配置终端也可通过代理链接,这个方法此处不表。

update

版本2.7.1的server 编译有bug ,需要修改pom.xml的一个值:
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值