安裝好JDK,maven
這里我使用的是JDK 1.8-121,maven 3.3.9(好像要求的也是這個(gè)版本)
安裝rpm,rpm-build,git
?yum install rpm?rpm-build.x86_64 git -y
安裝gcc,python環(huán)境,包管理工具以及依賴項(xiàng)
yum install -y gcc gcc-c++ python-devel
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py
pip install psutil
安裝docker虛擬化工具,與配套的weave等網(wǎng)絡(luò)工具,其中weave建議放置于/usr/bin下,避免使用sudo權(quán)限運(yùn)行時(shí)提示找不到命令
yum install docker
curl -L git.io/weave -o /usr/bin/weave
wget -O /usr/local/bin/weave https://raw.githubusercontent.com/zettio/weave/master/weave
chmod a+x /usr/local/bin/weave
下載所需文件
wget http://www.apache.org/dist/ambari/ambari-2.7.0/apache-ambari-2.7.0-src.tar.gz
tar xfvz apache-ambari-2.7.0-src.tar.gz
cd apache-ambari-2.7.0-src
mvn versions:set -DnewVersion=2.7.0.0.0
pushd ambari-metrics
mvn versions:set -DnewVersion=2.7.0.0.0
popd
進(jìn)行編譯
執(zhí)行下面命令
mvn -B clean install rpm:rpm -DnewVersion=2.7.0.0.0 -DbuildNumber=631319b00937a8d04667d93714241d2a0cb17275 -DskipTests -Dpython.ver="python >= 2.6"
備注:ambari-metrics rpm 需要單獨(dú)編譯,編譯到ambari-logsearch會(huì)失敗,這是因?yàn)閍mbari-logsearch和ambari-infra需要單獨(dú)編譯,只要其他的編譯成功即可,下面會(huì)告訴你怎么便利這三個(gè)工程
編譯ambari-metrics
cd?ambari-metrics
mvn clean package -Dbuild-rpm -DskipTests
顯示SUCEESS說明編譯成功
編譯ambari-logsearch
cd ambari-logsearch
mvn versions:set -DnewVersion=2.7.0.0.0
然后執(zhí)行:
mvn clean package -P native,rpm -DskipTest
編譯ambari-infra
$cd ambari-infra
mvn versions:set -DnewVersion=2.7.0.0.0
然后執(zhí)行:
mvn clean package -P rpm -DskipTest
備注:如果編譯過程中出現(xiàn)
Too many files with unapproved license
在編譯命令上加上-Drat.skip=true進(jìn)行編譯即可
備注:在編譯ambari-metrics時(shí),需要在線下載hadoop,hbase,phoenix的包
為了加快編譯速度,建議先下載到本地,安裝httpd,通過本地下載,需要修改
ambari-metrics/pom.xml中的下面內(nèi)容,將這個(gè)四個(gè)包下載到本地的http服務(wù)器中,并修改這個(gè)地方的路徑

修改hadoop,hbase,phoenix的版本
修改ambari-metrics/ambari-metrics-timelineservice/pom.xml
整點(diǎn)hortonworks做的有點(diǎn)不好,1578這個(gè)版本,在他們maven倉庫中都沒有了,所以這個(gè)地方將1578改成1634

所有都編譯完成以后,通過
find . -name *.rpm可以看到編譯好的rpm
