centos 7Hadoop2.7.3+Spark2.1.0 完全分布式環(huán)境 搭建全過(guò)程

Hadoop2.7.3+Spark2.1.0 完全分布式環(huán)境 搭建全過(guò)程


www.cnblogs.com/purstar/p/6293605.html

一、修改hosts文件

在主節(jié)點(diǎn)搓蚪,就是第一臺(tái)主機(jī)的命令行下;

vim /etc/profile

我的是三臺(tái)云主機(jī):

在原文件的基礎(chǔ)上加上;

ip1 master worker0 namenode

ip2 worker1 datanode1

ip3 worker2 datanode2

其中的ipN代表一個(gè)可用的集群IP服球,ip1為master的主節(jié)點(diǎn)行疏,ip2和iip3為從節(jié)點(diǎn)役耕。

二贸铜、ssh互信(免密碼登錄)

注意我這里配置的是root用戶秽五,所以以下的家目錄是/root

如果你配置的是用戶是xxxx孽查,那么家目錄應(yīng)該是/home/xxxxx/

#在主節(jié)點(diǎn)執(zhí)行下面的命令:

ssh-keygen-t rsa -P''#一路回車直到生成公鑰

scp/root/.ssh/id_rsa.pub root@worker1:/root/.ssh/id_rsa.pub.master #從master節(jié)點(diǎn)拷貝id_rsa.pub到worker主機(jī)上,并且改名為id_rsa.pub.masterscp/root/.ssh/id_rsa.pub root@worker1:/root/.ssh/id_rsa.pub.master #同上,以后使用workerN代表worker1和worker2.

scp/etc/hosts root@workerN:/etc/hosts? #統(tǒng)一hosts文件坦喘,讓幾個(gè)主機(jī)能通過(guò)host名字來(lái)識(shí)別彼此

#在對(duì)應(yīng)的主機(jī)下執(zhí)行如下命令:cat/root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys #master主機(jī)cat/root/.ssh/id_rsa.pub.master >> /root/.ssh/authorized_keys #workerN主機(jī)

這樣master主機(jī)就可以無(wú)密碼登錄到其他主機(jī)盲再,這樣子在運(yùn)行master上的啟動(dòng)腳本時(shí)和使用scp命令時(shí)候西设,就可以不用輸入密碼了。

三答朋、安裝基礎(chǔ)環(huán)境(JAVA和SCALA環(huán)境)

1.Java1.8環(huán)境搭建:

配置master的java環(huán)境

#下載jdk1.8的rpm包

wget--no-check-certificate --no-cookies --header"Cookie: oraclelicense=accept-securebackup-cookie"http://download.oracle.com/otn-pub/java/jdk/8u112-b15/jdk-8u112-linux-x64.rpmrpm -ivh jdk-8u112-linux-x64.rpm

#增加JAVA_HOME

vim etc/profile

#增加如下行:#Java homeexport JAVA_HOME=/usr/java/jdk1.8.0_112/

#刷新配置:

source /etc/profile #當(dāng)然reboot也是可以的

配置workerN主機(jī)的java環(huán)境

#使用scp命令進(jìn)行拷貝scpjdk-8u112-linux-x64.rpm root@workerN:/root

#其他的步驟如master節(jié)點(diǎn)配置一樣

2.Scala2.12.1環(huán)境搭建:

Master節(jié)點(diǎn):

#下載scala安裝包:wget-O"scala-2.12.1.rpm""http://159.226.251.229/videoplayer/scala-2.12.1.rpm?ich_u_r_i=e43f9cc87710b8bba72b4c32577f60ea&ich_s_t_a_r_t=0&ich_e_n_d=0&ich_k_e_y=1745018917750263442428&ich_t_y_p_e=1&ich_d_i_s_k_i_d=1&ich_u_n_i_t=1"

#安裝rpm包:rpm-ivh scala-2.12.1.rpm

#增加SCALA_HOMEvim/etc/profile

#增加如下內(nèi)容;#Scala Homeexport SCALA_HOME=/usr/share/scala

#刷新配置

source/etc/profile

WorkerN節(jié)點(diǎn);

#使用scp命令進(jìn)行拷貝scpscala-2.12.1.rpm root@workerN:/root

#其他的步驟如master節(jié)點(diǎn)配置一樣

四贷揽、Hadoop2.7.3完全分布式搭建

MASTER節(jié)點(diǎn):

1.下載二進(jìn)制包:

wgethttp://www-eu.apache.org/dist/hadoop/common/hadoop-2.7.3/hadoop-2.7.3.tar.gz

2.解壓并移動(dòng)至相應(yīng)目錄

我的習(xí)慣是將軟件放置/opt目錄下:

tar-xvf hadoop-2.7.3.tar.gzmvhadoop-2.7.3/opt

3.修改相應(yīng)的配置文件:

(1)/etc/profile:

增加如下內(nèi)容:

#hadoop enviroment

export HADOOP_HOME=/opt/hadoop-2.7.3/export PATH="$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH"export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop

export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop

(2)$HADOOP_HOME/etc/hadoop/hadoop-env.sh

修改JAVA_HOME 如下:

export JAVA_HOME=/usr/java/jdk1.8.0_112/

(3)$HADOOP_HOME/etc/hadoop/slaves

worker1

worker2

(4)$HADOOP_HOME/etc/hadoop/core-site.xml

? ? ? ? ? ? ? ? ? ? ? ? fs.defaultFS? ? ? ? ? ? ? ? hdfs://master:9000? ? ? ? ? ? ? ? io.file.buffer.size? ? ? ? 131072? ? ? ? ? ? ? ? ? ? ? ? ? ? ? hadoop.tmp.dir? ? ? ? ? ? ? ? /opt/hadoop-2.7.3/tmp? ? ? ?

(5)$HADOOP_HOME/etc/hadoop/hdfs-site.xml

? ? ? ? ? dfs.namenode.secondary.http-address? ? ? master:50090? ? ? ? ? ? ? dfs.replication? ? ? 2? ? ? ? ? ? ? dfs.namenode.name.dir? ? ? file:/opt/hadoop-2.7.3/hdfs/name? ? ? ? ? ? ? dfs.datanode.data.dir? ? ? file:/opt/hadoop-2.7.3/hdfs/data? ?

(6)$HADOOP_HOME/etc/hadoop/mapred-site.xml

復(fù)制template,生成xml:

cpmapred-site.xml.template mapred-site.xml

內(nèi)容:

? ? mapreduce.framework.name? ? yarn? ? ? ? ? ? ? mapreduce.jobhistory.address? ? ? ? ? master:10020? ? ? ? ? ? ? mapreduce.jobhistory.address? ? ? ? ? master:19888?

(7)$HADOOP_HOME/etc/hadoop/yarn-site.xml

? ? ? ? ? ? ? ? ? yarn.nodemanager.aux-services? ? ? ? ? mapreduce_shuffle? ? ? ? ? ? ? ? ? yarn.resourcemanager.address? ? ? ? ? master:8032? ? ? ? ? ? ? ? ? yarn.resourcemanager.scheduler.address? ? ? ? ? master:8030? ? ? ? ? ? ? ? ? yarn.resourcemanager.resource-tracker.address? ? ? ? master:8031? ? ? ? ? ? ? ? yarn.resourcemanager.admin.address? ? ? ? master:8033? ? ? ? ? ? ? ? yarn.resourcemanager.webapp.address? ? ? ? master:8088? ?

至此master節(jié)點(diǎn)的hadoop搭建完畢

再啟動(dòng)之前我們需要

格式化一下namenode

hadoop namenode -format

WorkerN節(jié)點(diǎn):

(1)復(fù)制master節(jié)點(diǎn)的hadoop文件夾到worker上:

scp-r /opt/hadoop-2.7.3root@wokerN:/opt #注意這里的N要改為1或者2

(2)修改/etc/profile:

過(guò)程如master一樣

五梦碗、Spark2.1.0完全分布式環(huán)境搭建:

MASTER節(jié)點(diǎn):

1.下載文件:

wget-O"spark-2.1.0-bin-hadoop2.7.tgz""http://159.226.251.230/videoplayer/spark-2.1.0-bin-hadoop2.7.tgz?ich_u_r_i=8d258cfd6421af60c998d108eae1ca4d&ich_s_t_a_r_t=0&ich_e_n_d=0&ich_k_e_y=1745018916751063032407&ich_t_y_p_e=1&ich_d_i_s_k_i_d=7&ich_u_n_i_t=1"

2.解壓并移動(dòng)至相應(yīng)的文件夾;

tar-xvf spark-2.1.0-bin-hadoop2.7.tgzmvspark-2.1.0-bin-hadoop2.7/opt

3.修改相應(yīng)的配置文件:

(1)/etc/profie

#Spark enviroment

export SPARK_HOME=/opt/spark-2.1.0-bin-hadoop2.7/export PATH="$SPARK_HOME/bin:$PATH"

(2)$SPARK_HOME/conf/spark-env.sh

cpspark-env.sh.template spark-env.sh

#配置內(nèi)容如下:

export SCALA_HOME=/usr/share/scala

export JAVA_HOME=/usr/java/jdk1.8.0_112/export SPARK_MASTER_IP=master

export SPARK_WORKER_MEMORY=1g

export HADOOP_CONF_DIR=/opt/hadoop-2.7.3/etc/hadoop

(3)$SPARK_HOME/conf/slaves

cpslaves.template slaves

配置內(nèi)容如下

master

worker1

worker2

WorkerN節(jié)點(diǎn):

將配置好的spark文件復(fù)制到workerN節(jié)點(diǎn)

scpspark-2.1.0-bin-hadoop2.7root@workerN:/opt

修改/etc/profile禽绪,增加spark相關(guān)的配置,如MASTER節(jié)點(diǎn)一樣

六洪规、啟動(dòng)集群的腳本

啟動(dòng)集群腳本start-cluster.sh如下:

#!/bin/bashecho-e"\033[31m ========Start The Cluster======== \033[0m"echo-e"\033[31m Starting Hadoop Now !!! \033[0m"/opt/hadoop-2.7.3/sbin/start-all.shecho-e"\033[31m Starting Spark Now !!! \033[0m"/opt/spark-2.1.0-bin-hadoop2.7/sbin/start-all.shecho-e"\033[31m The Result Of The Command \"jps\" :? \033[0m"jpsecho-e"\033[31m ========END======== \033[0m"

截圖如下:

關(guān)閉集群腳本stop-cluser.sh如下:

#!/bin/bashecho-e"\033[31m ===== Stoping The Cluster ====== \033[0m"echo-e"\033[31m Stoping Spark Now !!! \033[0m"/opt/spark-2.1.0-bin-hadoop2.7/sbin/stop-all.shecho-e"\033[31m Stopting Hadoop Now !!! \033[0m"/opt/hadoop-2.7.3/sbin/stop-all.shecho-e"\033[31m The Result Of The Command \"jps\" :? \033[0m"jpsecho-e"\033[31m ======END======== \033[0m"

截圖如下:

七印屁、測(cè)試一下集群:

這里我都用最簡(jiǎn)單最常用的Wordcount來(lái)測(cè)試好了!

1.測(cè)試hadoop

測(cè)試的源文件的內(nèi)容為:

Hello hadoop

hello spark

hello bigdata

然后執(zhí)行下列命令:

hadoop fs -mkdir-p /Hadoop/Input

hadoop fs-put wordcount.txt /Hadoop/Input

hadoop jar/opt/hadoop-2.7.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /Hadoop/Input /Hadoop/Output

等待mapreduce執(zhí)行完畢后斩例,查看結(jié)果;

hadoop fs -cat/Hadoop/Output/*

hadoop集群搭建成功雄人!

2.測(cè)試spark

為了避免麻煩這里我們使用spark-shell,做一個(gè)簡(jiǎn)單的worcount的測(cè)試

用于在測(cè)試hadoop的時(shí)候我們已經(jīng)在hdfs上存儲(chǔ)了測(cè)試的源文件念赶,下面就是直接拿來(lái)用就好了础钠!

spark-shell

valfile=sc.textFile("hdfs://master:9000/Hadoop/Input/wordcount.txt")

val rdd=file.flatMap(line => line.split("")).map(word => (word,1)).reduceByKey(_+_)

rdd.collect()

rdd.foreach(println)

退出的話使用如下命令:

:quit

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市叉谜,隨后出現(xiàn)的幾起案子旗吁,更是在濱河造成了極大的恐慌,老刑警劉巖正罢,帶你破解...
    沈念sama閱讀 218,682評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件阵漏,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡翻具,警方通過(guò)查閱死者的電腦和手機(jī)履怯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)裆泳,“玉大人叹洲,你說(shuō)我怎么就攤上這事」ず蹋” “怎么了运提?”我有些...
    開(kāi)封第一講書人閱讀 165,083評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)闻葵。 經(jīng)常有香客問(wèn)我民泵,道長(zhǎng),這世上最難降的妖魔是什么槽畔? 我笑而不...
    開(kāi)封第一講書人閱讀 58,763評(píng)論 1 295
  • 正文 為了忘掉前任栈妆,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘鳞尔。我一直安慰自己嬉橙,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,785評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布寥假。 她就那樣靜靜地躺著市框,像睡著了一般。 火紅的嫁衣襯著肌膚如雪糕韧。 梳的紋絲不亂的頭發(fā)上枫振,一...
    開(kāi)封第一講書人閱讀 51,624評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音兔沃,去河邊找鬼蒋得。 笑死,一個(gè)胖子當(dāng)著我的面吹牛乒疏,可吹牛的內(nèi)容都是我干的额衙。 我是一名探鬼主播,決...
    沈念sama閱讀 40,358評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼怕吴,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼窍侧!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起转绷,我...
    開(kāi)封第一講書人閱讀 39,261評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤伟件,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后议经,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體斧账,經(jīng)...
    沈念sama閱讀 45,722評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年煞肾,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了咧织。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,030評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡籍救,死狀恐怖习绢,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情蝙昙,我是刑警寧澤闪萄,帶...
    沈念sama閱讀 35,737評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站奇颠,受9級(jí)特大地震影響败去,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜烈拒,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,360評(píng)論 3 330
  • 文/蒙蒙 一为迈、第九天 我趴在偏房一處隱蔽的房頂上張望三椿。 院中可真熱鬧,春花似錦葫辐、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 31,941評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至焊傅,卻和暖如春剂陡,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背狐胎。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,057評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工鸭栖, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人握巢。 一個(gè)月前我還...
    沈念sama閱讀 48,237評(píng)論 3 371
  • 正文 我出身青樓晕鹊,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親暴浦。 傳聞我的和親對(duì)象是個(gè)殘疾皇子溅话,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,976評(píng)論 2 355

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