【Ambari】2.5.1.0.0漢化、構建和安裝
環境準備
我使用的Centos7環境(其他的環境ubuntu,debian可能不太一樣),在Centos7上安裝依賴的軟體包。
首先下載maven3.5,jdk8,python2.6並配置好環境變數yum install -y git svn node python-devel rpm-build gcc-c++
下載原始碼
首先從Ambari下載頁面選擇適合的映象下載原始碼包。也可以直接執行:wget http://www.apache.org/dist/ambari/ambari-2.5.1/apache-ambari-2.5.1-src.tar.gz tar xfvz apache-ambari-2.5
漢化資源
1)ambari-web/app/messages.js,該檔案是一個js檔案,內容是一個3000多行的json檔案,將該json的每個value漢化成中文。
2)ambari-admin/src/main/resources/ui/admin-web/app/scripts/i18n.config.js,該檔案是一個js檔案,內容是一個500多行的json檔案,將該json的每個value漢化成中文。
3)ambari-web/app/mappers/configs/config_groups_mapper.js,修改該檔案中的description中的value。
4)ambari-web/app/assets/index.html,將title,loading和頁尾漢化
5)ambari-web/app/templates/common/about.hbs,修改logo圖表,修改licence等。
6)ambari-web/app/controllers/wizard.js 翻譯277行
8)翻譯一些公共的服務的指標視窗,比如ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/widgets.json.
9)翻譯一些公共服務的警告,比如ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/alerts.json
10)翻譯公共服務的簡介,比如ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/metainfo.xml
11)翻譯公共服務的配置檔案,比如ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/core-site.xml,將檔案內的description漢化為中文。修改ambari-server和ambari-agent指令碼
修改ambari-server/sbin/ambari-server的34行buildNumber=”2.5.1.0.0”
修改ambari-agent/conf/unix/ambari-agent的23行buildNumber=”2.5.1.0.0”編譯
mvn -B -o clean install package rpm:rpm -DnewVersion=2.5.1.0.0 -DskipTests -Dbuild-rpm -Dpython.ver="python >= 2.6" -Drat.skip=true
然後等待編譯,其中需要下載幾個比較大的jar包,grafana、hadoop、hbase、phoenix、solr,這幾個包都比較大,你可以先下載到本機,放在appache伺服器下或者tomcat伺服器下,然後將ambari-metrics/pom.xml中的資源路徑改為自己配置的伺服器,編譯過程中,會用node.js去下載國外的js庫,如果下載中斷,可以找到那個包無法下載,然後手動下載,放到指定的位置,繼續編譯。
編譯完成之後,會在ambari的各個模組下的target目錄下生成相應的rpm包。安裝
找到ambari-server包和ambari-agent包,還有其他的一些需要的rpm包(metrics-collector,ambari-monitor…)
yum install -y ambari-server-2.5.1.0.0*.rpm yum install -y ambari-agent-2.5.1.0.0*.rpm ambari-server setup,中間配置自己的jdk,其他的預設即可 ambari-server start