學習一個新的組件,最好的方法就是上手使用,百聞不如一見,更何況是能自己親手編譯出來。
在動手編譯之前,我也糾結版本的選擇問題,是選擇最新的,還是次新的?最終決定讓我選擇2.0的理由就是它更新說明中提到的版本支持說明:
1.Updated component versions to use Hadoop 3.1, Hive 3.1, HBase 2.0, Solr 7.5 and Kafka 2.0
2.Updated JanusGraph version to 0.3.1
雖然JanusGraph不是最新的0.5.0,但是就發佈時間來說,0.3.1已經也是比較靠前的版本(0.3.2是2019年6月發佈)。
編譯
- 從官網下載2.0.0對應的源碼包,然後執行:
<code>tar xvfz apache-atlas-2.0.0-sources.tar.gz
cd apache-atlas-sources-2.0.0/
export MAVEN_OPTS="-Xms2g -Xmx2g"
mvn clean -DskipTests install/<code>
說一下我遇到的幾個問題吧
- JDK版本:編譯過程中提示對maven、JDK的版本都有要求,告警顯示是warn級別的,我沒有在意,最終導致反覆多次編譯。一開始我的JDK是1.8_91,第一次出現編譯錯誤後,我直接選擇JDK11.0.5,發現還是不行,最終選擇升級JDK1.8_241解決。
- Maven版本:maven則是在有錯誤後,直接升級至3.6.3;好久沒有編譯,發現maven的好多lib都需要使用https協議進行才能下載,一開始我還手工install,後面意識到不是網絡問題後,直接配置maven的conf文件,增加如下配置,缺包的問題就沒有再出現:
<code>159
160 <mirror>
161repo1
162 <mirrorof>central/<mirrorof>
163 <name>中央倉庫repo1/<name>
164https://repo1.maven.org/maven2/
165 /<mirror>
166
167
168 <mirror>
169repo2
170 <mirrorof>central/<mirrorof>
171 <name>中央倉庫repo2/<name>
172https://repo2.maven.org/maven2/
173 /<mirror>/<code>
- Scala:升級至2.12,此處主要是為了使用kafka_2.12-2.0.0;
- NPM:不知道在哪個環節,卡主了較長時間,時候發現是在用npm做一些安裝,本身我電腦上可能沒有,導致僵死,該問題採用brew install npm方法解決;
生成安裝包
生成安裝包,需要執行以下命令(不內置Hbase、Solr):
<code>mvn clean -DskipTests package -Pdist/<code>
生成包括內置HBase、Solr的版本:
<code>mvn clean -DskipTests package -Pdist,embedded-hbase-solr/<code>
該過程基本的差異就是網速了,下面就是我的一個包括內置Hbase、Solr的編譯截圖。
編譯中因為網速太慢,我中斷了一次,倒是讓我發現了一個提速的方法,可以提前自行下載HBase-2.0.2、Solr-7.5.0兩個版本,分別放到如下目錄:
<code>apache-atlas-sources-2.0.0/distro/hbase/hbase-2.0.2.tar.gz
apache-atlas-sources-2.0.0/distro/solr/solr-7.5.0.tgz/<code>
再次執行上述編譯命令,則可以大大提升速度。
部署運行
將編譯好的安裝包,從如下目錄拷貝出來:
<code>apache-atlas-sources-2.0.0/distro/target/apache-atlas-2.0.0-server.tar.gz/<code>
解壓後執行如下命令:
<code>cd atlas-{project.version}
bin/atlas_start.py/<code>
執行後,服務啟動,如下圖所示:
此時,服務後臺已經運行,但是還是無法訪問,再執行如下命令:
<code>bin/quick_start.py
Enter username for atlas :-
Enter password for atlas :-/<code>
等待幾分鐘,將示例數據導入到後臺中。
此時,服務就可以用了,可以訪問http://localhost:21000,採用之前輸入的用戶名和密碼登陸。
閱讀更多 大宇天飛 的文章