在centos7下编译ambari 2.7

安装好JDK,maven

这里我使用的是JDK 1.8-121,maven 3.3.9(好像要求的也是这个版本)

安装rpm,rpm-build,git

 yum install rpm rpm-build.x86_64 git -y

安装gcc,python环境,包管理工具以及依赖项

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等网络工具,其中weave建议放置于/usr/bin下,避免使用sudo权限运行时提示找不到命令

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

进行编译

执行下面命令
mvn -B clean install rpm:rpm -DnewVersion=2.7.0.0.0 -DbuildNumber=631319b00937a8d04667d93714241d2a0cb17275 -DskipTests -Dpython.ver="python >= 2.6"

备注:ambari-metrics rpm 需要单独编译,编译到ambari-logsearch会失败,这是因为ambari-logsearch和ambari-infra需要单独编译,只要其他的编译成功即可,下面会告诉你怎么便利这三个工程

编译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

然后执行:

mvn clean package -P native,rpm -DskipTest

编译ambari-infra

$cd ambari-infra

mvn versions:set -DnewVersion=2.7.0.0.0

然后执行:

mvn clean package -P rpm -DskipTest


备注:如果编译过程中出现

Too many files with unapproved license

在编译命令上加上-Drat.skip=true进行编译即可

备注:在编译ambari-metrics时,需要在线下载hadoop,hbase,phoenix的包

为了加快编译速度,建议先下载到本地,安装httpd,通过本地下载,需要修改

ambari-metrics/pom.xml中的下面内容,将这个四个包下载到本地的http服务器中,并修改这个地方的路径

修改hadoop,hbase,phoenix的版本

修改ambari-metrics/ambari-metrics-timelineservice/pom.xml

整点hortonworks做的有点不好,1578这个版本,在他们maven仓库中都没有了,所以这个地方将1578改成1634

所有都编译完成以后,通过

find . -name *.rpm可以看到编译好的rpm

整个编译完成,就可以安装了

你可能感兴趣的:(在centos7下编译ambari 2.7)