Ambari 2.4.0編譯總結

編譯環境爲centos 6.5(虛擬機):html

虛擬機安裝好後,首先須要配置基礎環境,安裝必要的包:java

     1.安裝maven:node

     2.4推薦的maven爲3.2.1:python

  

mkdir /usr/local/apache-maven
cd /usr/local/apache-maven
wget http://mirror.olnevhost.net/pub/apache/maven/binaries/apache-maven-3.2.1-bin.tar.gz
tar -xvf apache-maven-3.2.1-bin.tar.gz

  併爲maven配置環境變量linux

export M2_HOME=/usr/local/apache-maven/apache-maven-3.2.1
export M2=$M2_HOME/bin
export PATH=$M2:$PATH

  2.安裝jdkc++

mkdir /usr/jdk
cd /usr/jdk
cp "FROM SOURCE"/jdk-7u67-linux-x64.tar.gz . (or download the latest)
tar -xvf jdk-7u67-linux-x64.tar.gz

  一樣的,配置環境變量git

export PATH=$PATH:/usr/jdk/jdk1.7.0_67/bin
export JAVA_HOME=/usr/jdk/jdk1.7.0_67
export _JAVA_OPTIONS="-Xmx2048m -XX:MaxPermSize=1024m -Djava.awt.headless=true"

  3.基礎的java環境安裝完後,咱們須要經過yum安裝各類依賴,如git用來從github上獲取資源,nodejs和brunch是編譯ambari-web必須的組件等等,在控制檯中依次輸入如下指令:github

yum install -y git
curl --silent --location https://rpm.nodesource.com/setup | bash -
yum install -y nodejs
yum install -y gcc-c++ make
npm install -g brunch@1.7.20
yum install -y libfreetype.so.6
yum install -y freetype
yum install -y fontconfig
yum install -y python-devel
yum install -y rpm-build

  4.安裝python,python也是編譯必須安裝的組件,控制檯輸入web

wget http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg --no-check-certificate
sh setuptools-0.6c11-py2.6.egg

  5.至此咱們已經將編譯必備的環境部署完畢,在centos中進入你的源碼所在目錄,這時候須要給源碼打上版本號,在控制檯輸入apache

mvn versions:set -DneVersion=2.4.0.0.0

  這是主目錄的版本號,下面還要給ambari-metrics打上版本,進入ambari源碼目錄後,再打版本號

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

  6.接下來就是相當重要的編譯指令了

mvn -B clean install package rpm:rpm -DnewVersion=2.4.0.0.0 -DskipTests -Dpython.ver="python >= 2.6"

  

   編譯要共計要下載2-3G的依賴和環境,請確保能正常訪問github和Hortonworks官網,不出意外的話,編譯不會順利完成,你會趕上各類錯誤,按照控制檯的反饋去解決問題便可。

   若遇到下載超時問題,有時候幾百兆的包屢次下載失敗很是浪費時間,不妨在pom文件裏找到該文件的網絡地址,先去windows裏把這個包下載至本地,而後將pom中的地址替換成本地地址,這一步的編譯會大大加快。

如:ambari-metrics裏有不少子項目,須要下載hbase,hadoop等,源文件幾百兆在網絡很差的時候很容易中斷出錯,或者出現其餘錯誤須要從新編譯的時候,再次執行會很慢,這時候在ambari metrics的pom文件裏找到相應的配置:

<hbase.tar>file:///media/sf_linuxShare/hbase.tar.gz</hbase.tar>

<hbase.folder>hbase-1.1.2.2.3.4.0-3347</hbase.folder>

<hadoop.tar>file:///media/sf_linuxShare/hadoop.tar.gz</hadoop.tar>

<hadoop.folder>hadoop-2.7.1.2.3.4.0-3347</hadoop.folder>

  如上面的中的配置,已經被我替換成本地地址,原本是http的網絡地址。

   除此以外,從git上下載的有些插件有時由於git被牆的關係也會失敗,如phantomjs等,這時你能夠選擇用其餘手段安裝phantomjs,再次進行編譯則會跳過該步驟,但記得版本要匹配,不然仍是會從git上去下載對應版本。

  編譯過程當中可能遇到的錯誤有不少種在這就不一一羅列出來了,從控制檯的反饋基本都能看出端倪,舉個我有點印象的例子,就是hbase安裝錯誤,和主機名有關,主機名若和host文件裏的本地映射不一致,hbase是會安裝錯誤的,安裝虛擬機的時候是會不當心忽略這些問題。

  7.順利編譯完成後,在源碼目錄的target目錄裏你會看到你編譯出來的rpm包,按照以下順序安裝:

   ① 選擇一臺主機安裝主節點ambari-server

  地址:ambari-server/target/rpm/ambari-server/RPMS/noarch/ 

yum install ambari-server*.rpm 

  安裝完畢後,依次執行setup和start命令

ambari-server setup

ambari-server start

   ②   在全部的主機上安裝並啓動ambari-agent

  地址: ambari-agent/target/rpm/ambari-agent/RPMS/x86_64/

yum install ambari-agent*.rpm

  編輯/etc/ambari-agent/ambari.ini

...
[server]
hostname=localhost
 
...

  確保[server]下的hostname指向你實際的server地址,而不是上文中的localhost。

ambari-agent start

  8.接下來,你就能夠進入ambari-web的ui中配置你的集羣了,打開瀏覽器輸入http://<ambari-server-host>:8080. 紅色部分換成你的server主機的地址便可,默認管理員爲admin 密碼admin。

相關文章
相關標籤/搜索