005-Ambari二次开发之源码编译

编译Ambari源码的主要目的是有时我们修改了源码,需要将修改的内容打到包重,通过前面我们知道,Ambari最终的安装文件主要就两个RPM包,ambari-server和ambari-agent。基于上述,有些场景我们需要重新编译源码。

Ambari2.6.2 源码github下载地址:https://github.com/apache/ambari/tree/release-2.6.2

环境准备

1. JDK环境,从以下地址下载并配置环境变量

2. maven安装,本文使用3.3.9版本

下载完后,解压并设置环境变量。配置完后,可以通过 maven -version验证。

替换为国内源,速度比较快,编辑maven安装路径下的 conf/setting.xml,添加如下内容

3. rpmbuild安装

由于需要打包RPM,所以需要安装rpmbuild。执行 yum install rpm-build

验证是否安装成功,执行 rpmbuild --version

4. 安装 gcc-c++及相关依赖包

yum install gcc make gcc-c++ openssl-devel wget

5. 安装nodeJS

下载完后,解压,配置环境变量。执行 node -v,npm -v

6. 安装brunch

执行 npm install -g brunch@1.7.20 ,然后执行 brunch -V进行验证

7. 安装python-devel

yum install python-devel

编译Ambari

切换到Ambari源码主目录下

执行 mvn -B clean install package rpm:rpm -DnewVersion=2.6.2.0.0 -DskipTests -Drat.skip -Dpython.ver="python >= 2.6"

编译过程遇到的问题

1. 编译Ambari-web出现下面问题,重新运行编译指令(一般编译都有卡顿的现象,如果等待时间过长,可以直接ctrl+z干掉重新编译)

2. 编译Ambari Admin views 事出现如下问题,git没有安装,执行 yum install git

3. 在编译过程中,有些文件比较大,可以事先下载下来,做成源,然后将代码的地址改成自己搭建的源即可

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180810G16KPT00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券