Spark1.6.0編譯(Hadoop版本2.6.0-cdh-5.7.0)

本地想玩耍spark瓤狐,Hadoop其他環(huán)境都使用的是CDH 5.7.0,本想一路下來(lái)繼續(xù)使用cloudera提供的版本赴捞,但是官方編譯的版本運(yùn)行起來(lái)各種錯(cuò)誤郁稍,所以先碼一片文章,發(fā)揚(yáng)奉獻(xiàn)精神恢着,走你>>>

開(kāi)始入坑:(直接上編譯步驟)

1.環(huán)境介紹:

CentOS6.8-64位
JDK7
Spark1.6.0
Scala2.10.5
Hadoop2.6.0-CDH5.7.0
maven3.3.9(只需要3.3.3+就可以)

2.編譯環(huán)境部署

(1)jdk的安裝掰派,發(fā)揚(yáng)工匠精神,直接都碼上吧

  • tar -zxvf jdk1.7.0_65.tar.gz -C /opt/cluster/
  • vim /etc/profile(添加環(huán)境變量)
# Java Home
export JAVA_HOME=/opt/jdk1.7.0_65
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
bin:$JAVA_HOME/bin
  • source /etc/profile
  • 驗(yàn)證安裝:java -version 或者 echo $JAVA_HOME

(2)Maven的安裝

  • tar -zxvf apache-maven-3.3.9.tar.gz -C /opt/cluster/
  • vim /etc/profile(添加環(huán)境變量)
# Maven Home
export MAVEN_HOME=/opt/cluster/apache-maven-3.3.9
bin:$MAVEN_HOME/bin
  • source /etc/profile
  • 驗(yàn)證安裝:mvn -version 或者 echo $MAVEN_HOME

(3)Scala的安裝

  • tar -zxvf scala-2.10.5.tgz -C /opt/cluster/
  • vim /etc/profile(添加環(huán)境變量)
# Scala Home
export SCALA_HOME=/opt/cluster/scala-2.10.5
bin:$SCALA_HOME/bin
  • source /etc/profile
  • 驗(yàn)證安裝:scala

(4)spark源碼安裝與配置

  • tar -zxvf spark-1.6.0.tgz -C /opt/cluster/
  • 為了編譯比較快,要更改make-distribution.sh文件
添加版本(不用spark自己去解析生成)
VERSION=1.6.0
SCALA_VERSION=2.10
SPARK_HADOOP_VERSION=2.6.0-cdh5.7.0
SPARK_HIVE=1

將130多行的解析版本代碼注釋掉
#VERSION=$("$MVN" help:evaluate -Dexpression=project.version $@ 2>/dev/null | grep -v "INFO" | tail -n 1)
#SCALA_VERSION=$("$MVN" help:evaluate -Dexpression=scala.binary.version $@ 2>/dev/null\
#    | grep -v "INFO"\
#    | tail -n 1)
#SPARK_HADOOP_VERSION=$("$MVN" help:evaluate -Dexpression=hadoop.version $@ 2>/dev/null\
#    | grep -v "INFO"\
#    | tail -n 1)
#SPARK_HIVE=$("$MVN" help:evaluate -Dexpression=project.activeProfiles -pl sql/hive $@ 2>/dev/null\
#    | grep -v "INFO"\
#    | fgrep --count "<id>hive</id>";\
#    # Reset exit status to 0, otherwise the script stops here if the last grep finds nothing\
#   # because we use "set -o pipefail"
#    echo -n)

3.開(kāi)始編譯

  • 我建議使用jdk7去編譯描扯,jdk8的不去特此說(shuō)明了
step1:進(jìn)入spark源碼目錄
cd /opt/cluster/spark-1.6.0
step2:配置一下MAVEN_OPTS
export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m"
step3:開(kāi)始編譯
./make-distribution.sh --tgz -Phadoop-2.6 -Dhadoop.version=2.6.0-cdh5.7.0 -Pyarn -Phive  -Phive-thriftserver

4.編譯過(guò)程

  • 編譯是按照下面的模塊執(zhí)行的绽诚,可以去觀察日志打印更好的了解執(zhí)行過(guò)程
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] Spark Project Parent POM ........................... SUCCESS [  5.850 s]
[INFO] Spark Project Test Tags ............................ SUCCESS [  4.403 s]
[INFO] Spark Project Launcher ............................. SUCCESS [ 15.255 s]
[INFO] Spark Project Networking ........................... SUCCESS [ 11.419 s]
[INFO] Spark Project Shuffle Streaming Service ............ SUCCESS [  7.578 s]
[INFO] Spark Project Unsafe ............................... SUCCESS [ 20.146 s]
[INFO] Spark Project Core ................................. SUCCESS [05:10 min]
[INFO] Spark Project Bagel ................................ SUCCESS [ 17.821 s]
[INFO] Spark Project GraphX ............................... SUCCESS [ 45.020 s]
[INFO] Spark Project Streaming ............................ SUCCESS [01:12 min]
[INFO] Spark Project Catalyst ............................. SUCCESS [01:39 min]
[INFO] Spark Project SQL .................................. SUCCESS [02:23 min]
[INFO] Spark Project ML Library ........................... SUCCESS [02:24 min]
[INFO] Spark Project Tools ................................ SUCCESS [ 19.271 s]
[INFO] Spark Project Hive ................................. SUCCESS [01:53 min]
[INFO] Spark Project Docker Integration Tests ............. SUCCESS [  8.271 s]
[INFO] Spark Project REPL ................................. SUCCESS [ 46.352 s]
[INFO] Spark Project YARN Shuffle Service ................. SUCCESS [ 18.256 s]
[INFO] Spark Project YARN ................................. SUCCESS [01:37 min]
[INFO] Spark Project Hive Thrift Server ................... SUCCESS [02:47 min]
[INFO] Spark Project Assembly ............................. SUCCESS [02:55 min]
[INFO] Spark Project External Twitter ..................... SUCCESS [ 56.260 s]
[INFO] Spark Project External Flume Sink .................. SUCCESS [02:39 min]
[INFO] Spark Project External Flume ....................... SUCCESS [ 27.604 s]
[INFO] Spark Project External Flume Assembly .............. SUCCESS [ 16.969 s]
[INFO] Spark Project External MQTT ........................ SUCCESS [03:33 min]
[INFO] Spark Project External MQTT Assembly ............... SUCCESS [ 20.258 s]
[INFO] Spark Project External ZeroMQ ...................... SUCCESS [01:17 min]
[INFO] Spark Project External Kafka ....................... SUCCESS [01:24 min]
[INFO] Spark Project Examples ............................. SUCCESS [07:13 min]
[INFO] Spark Project External Kafka Assembly .............. SUCCESS [ 11.575 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 44:07 min
[INFO] Final Memory: 101M/1243M
[INFO] ------------------------------------------------------------------------

5.后續(xù)

  • 編譯成功后會(huì)在當(dāng)前目錄下生成一個(gè)包:spark-1.6.0-bin-2.6.0-cdh5.7.0.tgz

  • 解壓這個(gè)到你想解壓的位置

 tar -zxvfspark-1.6.0-bin-2.6.0-cdh5.7.0.tgz -C /opt/cluster/
  • 可以運(yùn)行一個(gè)Wordcount體驗(yàn)一下
step1:進(jìn)入解壓目錄執(zhí)行
bin/spark-shell
step2:自己在HDFS上添加一個(gè)文件,隨便寫(xiě)幾個(gè)單詞蜂桶,空格隔開(kāi)犀勒,執(zhí)行scala
sc.textFile("hdfs://hadoop-master:8020/user/master/mapreduce/wordcount/input/hello.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_ + _)
step3:查看結(jié)果
rse0.collect
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末贾费,一起剝皮案震驚了整個(gè)濱河市褂萧,隨后出現(xiàn)的幾起案子葵萎,更是在濱河造成了極大的恐慌,老刑警劉巖谎痢,帶你破解...
    沈念sama閱讀 211,194評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件节猿,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡峰鄙,警方通過(guò)查閱死者的電腦和手機(jī)太雨,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門囊扳,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人仿野,你說(shuō)我怎么就攤上這事她君。” “怎么了球涛?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,780評(píng)論 0 346
  • 文/不壞的土叔 我叫張陵亿扁,是天一觀的道長(zhǎng)鸟廓。 經(jīng)常有香客問(wèn)我,道長(zhǎng)牍陌,這世上最難降的妖魔是什么员咽? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,388評(píng)論 1 283
  • 正文 為了忘掉前任贝室,我火速辦了婚禮,結(jié)果婚禮上捡偏,老公的妹妹穿的比我還像新娘峡迷。我一直安慰自己,他們只是感情好枣申,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布忠藤。 她就那樣靜靜地躺著,像睡著了一般尖阔。 火紅的嫁衣襯著肌膚如雪榨咐。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,764評(píng)論 1 290
  • 那天齿坷,我揣著相機(jī)與錄音永淌,去河邊找鬼佩耳。 笑死,一個(gè)胖子當(dāng)著我的面吹牛李滴,可吹牛的內(nèi)容都是我干的蛮瞄。 我是一名探鬼主播,決...
    沈念sama閱讀 38,907評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼包竹,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼籍凝!你這毒婦竟也來(lái)了苗缩?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,679評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤退盯,失蹤者是張志新(化名)和其女友劉穎渊迁,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體毒租,經(jīng)...
    沈念sama閱讀 44,122評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡箱叁,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評(píng)論 2 325
  • 正文 我和宋清朗相戀三年耕漱,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片灾梦。...
    茶點(diǎn)故事閱讀 38,605評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡粪小,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情淆九,我是刑警寧澤,帶...
    沈念sama閱讀 34,270評(píng)論 4 329
  • 正文 年R本政府宣布饲窿,位于F島的核電站焕蹄,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏鸦泳。R本人自食惡果不足惜永品,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評(píng)論 3 312
  • 文/蒙蒙 一鼎姐、第九天 我趴在偏房一處隱蔽的房頂上張望更振。 院中可真熱鬧饭尝,春花似錦、人聲如沸乎芳。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,734評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)肴甸。三九已至囚巴,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間彤叉,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,961評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工浮庐, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留审残,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,297評(píng)論 2 360
  • 正文 我出身青樓搅轿,卻偏偏與公主長(zhǎng)得像璧坟,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子雀鹃,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容