日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

spark集群详细搭建过程及遇到的问题解决(三)

發(fā)布時間:2024/1/17 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 spark集群详细搭建过程及遇到的问题解决(三) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

????上篇文章中講完了如何配置免密碼登錄的問題,現(xiàn)在講述下,三個節(jié)點的環(huán)境配置過程。

所需要的hadoop-2.7.3.tar.gz 、 jdk-7u79-linux-x64.tar.gz 、 scala-2.11.6.tgz 、 spark-2.0.1-bin-hadoop2.7.tgz 可以點擊這里獲取,資源存放在百度云盤。


首先需要在三個節(jié)點中分別創(chuàng)建spark目錄


master節(jié)點、worker1節(jié)點、worker2節(jié)點同時執(zhí)行:下面以master節(jié)點為例,部分操作worker1與worker2不需要執(zhí)行,不需要worker1,worker2執(zhí)行的將給出注釋,請仔細看清。

spark@master:~/.ssh$?cd?.. spark@master:~$?mkdir?spark

注意所創(chuàng)建的spark目錄屬于spark用戶,hadoop組

spark@master:~$?cd?spark/

在這里要介紹一個工具winSCP,功能是能夠在windows 與ubuntu 之間傳遞文件,之所以不推薦使用lrzsz包中的rz 進行傳遞是因為rz只能夠傳遞比較小的文件,對于大的文件,使用這個將會傳遞失敗,有趣的是可以使用命令sudo rz 進行傳遞,但是,當上傳之后,你可以看到所上傳的文件所屬的用戶將變成了root,這將會導(dǎo)致后面配置的錯誤。因此,必須使用winSCP進行傳遞。winSCP也在剛才的百度云盤中。

上圖顯示了winSCP工具界面,根據(jù)自己的文件目錄進行上傳,或者可以直接拖

依次對上傳的包進行解壓,注意:在worker1和worker2中只需上傳jdk-7u79-linux-x64.tar.gz 、 scala-2.11.6.tgz ,而在master中則要全部上傳四個文件

spark@master:~/spark$?tar?-zxvf?hadoop-2.7.3???#只在master節(jié)點執(zhí)行spark@master:~/spark$?tar?-zxvf?jdk-7u79-linux-x64.tar.gz???#三個節(jié)點都要執(zhí)行spark@master:~/spark$?tar?-zxvf?scala-2.11.6.tgz????#三個節(jié)點都要執(zhí)行spark@master:~/spark$?tar?-zxvf?spark-2.0.1-bin-hadoop2.7.tgz????#只在master節(jié)點執(zhí)行

解壓之后,為方便調(diào)用,建立軟連接

spark@master:~/spark$?ln?-s?hadoop-2.7.3?hadoop????#只在master節(jié)點執(zhí)行 spark@master:~/spark$?ln?-s?jdk1.7.0_79/?jdk???????#三個節(jié)點都要執(zhí)行 spark@master:~/spark$?ln?-s?scala-2.11.6?scala??????#三個節(jié)點都要執(zhí)行 spark@master:~/spark$?ln?-s?spark-2.0.1-bin-hadoop2.7?spark????#只在master節(jié)點執(zhí)行

切換到root下進行環(huán)境配置

spark@master:~/spark$?sudo?su [sudo]?password?for?spark:? root@master:/home/spark/spark#?vim?/etc/profile

在文件最底部添加:

export?JAVA_HOME=/home/spark/spark/jdk??????#三個節(jié)點都要添加 export?SCALA_HOME=/home/spark/spark/scala?????#三個節(jié)點都要添加 export?HADOOP_HOME=/home/spark/spark/hadoop???#三個節(jié)點都要添加 export?SPARK_HOME=/home/spark/spark/spark??????#三個節(jié)點都要添加export?CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export?HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop export?PATH=$PATH:$JAVA_HOME/bin:$SCALA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$SPARK_HOME/bin

保存,使其生效,并退回到spark用戶

root@master:/home/spark/spark#?source?/etc/profile root@master:/home/spark/spark#?exit exit spark@master:~/spark$

至此可以查看下java環(huán)境,scala,hadoop 環(huán)境是否已經(jīng)安裝成功

spark@master:~/spark$?java?-version java?version?"1.7.0_79" Java(TM)?SE?Runtime?Environment?(build?1.7.0_79-b15) Java?HotSpot(TM)?64-Bit?Server?VM?(build?24.79-b02,?mixed?mode)

java環(huán)境已經(jīng)配置成功

spark@master:~/spark$?scala?-version Scala?code?runner?version?2.11.6?--?Copyright?2002-2013,?LAMP/EPFL

scala已經(jīng)配置成功


至此上述是三個節(jié)點同時執(zhí)行的。


接下來,master節(jié)點上的配置

spark@master:~/spark$?hadoop?version Hadoop?2.7.3 Subversion?https://git-wip-us.apache.org/repos/asf/hadoop.git?-r?baa91f7c6bc9cb92be5982de4719c1c8af91ccff Compiled?by?root?on?2016-08-18T01:41Z Compiled?with?protoc?2.5.0 From?source?with?checksum?2e4ce5f957ea4db193bce3734ff29ff4 This?command?was?run?using?/home/spark/spark/hadoop-2.7.3/share/hadoop/common/hadoop-common-2.7.3.jar

hadoop環(huán)境成功


接下來開始配置hadoop

spark@master:~/spark$?cd?hadoop/etc/hadoop/ spark@master:~/spark/hadoop/etc/hadoop$??vim?slaves

刪除里面內(nèi)容,并添加一下內(nèi)容:

保存即可

依照下述命令進行文件的更改

spark@master:~/spark/hadoop/etc/hadoop$?vim?hadoop-env.sh

添加或更改文件中相關(guān)的變量,本人在這個地方踩了不少坑,如果不添加,會在后面報錯。

添加完畢后,記得保存。

spark@master:~/spark/hadoop/etc/hadoop$?vim?core-site.xml

添加內(nèi)容到

<configuration>內(nèi)容</configuration>

內(nèi)容如下:

<property><name>fs.default.name</name><value>hdfs://master:9000</value><description>The?name?of?the?default?file?system.??A?URI?whose?scheme?and?authority?determine?the?FileSystem?implementation.??The?uri's?scheme?determines?the?config?property?(fs.SCHEME.impl)?naming?the?FileSystem?implementation?class.?The?uri's?authority?is?used?to?determine?the?host,?port,?etc.?for?a?filesystem.</description></property><property><name>hadoop.tmp.dir</name><value>/home/spark/spark/hadoop/tmp</value><description>A?base?for?other?temporary?directories.</description></property>spark@master:~/spark/hadoop/etc/hadoop$?vim?hdfs-site.xml

添加內(nèi)容到

<configuration>內(nèi)容</configuration>

內(nèi)容如下:

<property><name>dfs.replication</name><value>3</value><description>Default?block?replication.The?actual?number?of?replications?can?be?specified?when?the?file?iscreated.The?default?is?used?if?replication?is?not?specified?in?create?time.</description></property>spark@master:~/spark/hadoop/etc/hadoop$?vim?yarn-site.xml

添加內(nèi)容到

<configuration>內(nèi)容</configuration>

內(nèi)容如下:

<property><name>yarn.resourcemanager.hostname</name><value>master</value> </property> <property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value> </property>spark@master:~/spark/hadoop/etc/hadoop$?vim?mapred-site.xml spark@master:~/spark/hadoop/etc/hadoop$?cp?mapred-site.xml.template?mapred-site.xml

添加內(nèi)容到

<configuration>內(nèi)容</configuration>

內(nèi)容如下: ?然后執(zhí)行cp mapred-site.xml.template mapred-site.xml

<property><name>mapreduce.framework.name</name><value>yarn</value><description>The?runtime?framework?for?executing?MapReduce?jobs.Can?be?one?of?local,?classic?or?yarn.默認是local,適合單機</description></property>spark@master:~/spark/hadoop/etc/hadoop$?vim?yarn-site.xml

添加內(nèi)容到

<configuration>內(nèi)容</configuration>

內(nèi)容如下:

<property><name>yarn.resourcemanager.hostname</name><value>master</value> </property> <property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value> </property>spark@master:~/spark/hadoop/etc/hadoop$?vim?yarn-env.sh

添加以下內(nèi)容在文件中地開始

export?JAVA_HOME=/home/spark/spark/jdk export?YARN_PID_DIR=/home/spark/spark/hadoop/tmp/pid

保存文件,注意有些hadoop參考可能會提前將 /home/spark/spark/hadoop/tmp 文件夾建好,但在此版本中不需要提前創(chuàng)建,,因為在hadoop初始化時,會自動創(chuàng)建,若是提前創(chuàng)建,則有可能會在啟動hadoop集群時報錯!



切換到worker1節(jié)點中

執(zhí)行

spark@worker1:~/spark$?scp?-r?spark@master:/home/spark/spark/hadoop?./hadoop

注意:./hadoop,代表將master中spark用戶下的/home/spark/spark/hadoop復(fù)制為hadoop,此名稱要跟之前在/etc/profile中設(shè)置的hadoop環(huán)境變量名稱一致。

在worker1中做下測試。

spark@worker1:~/spark$?hadoop?version Hadoop?2.7.3 Subversion?https://git-wip-us.apache.org/repos/asf/hadoop.git?-r?baa91f7c6bc9cb92be5982de4719c1c8af91ccff Compiled?by?root?on?2016-08-18T01:41Z Compiled?with?protoc?2.5.0 From?source?with?checksum?2e4ce5f957ea4db193bce3734ff29ff4 This?command?was?run?using?/home/spark/spark/hadoop/share/hadoop/common/hadoop-common-2.7.3.jar

顯示成功


切換到worker2節(jié)點中

spark@worker2:~/spark$?scp?-r?spark@master:/home/spark/spark/hadoop?./hadoop


在worker2下做下測試。

spark@worker2:~/spark$?hadoop?version Hadoop?2.7.3 Subversion?https://git-wip-us.apache.org/repos/asf/hadoop.git?-r?baa91f7c6bc9cb92be5982de4719c1c8af91ccff Compiled?by?root?on?2016-08-18T01:41Z Compiled?with?protoc?2.5.0 From?source?with?checksum?2e4ce5f957ea4db193bce3734ff29ff4 This?command?was?run?using?/home/spark/spark/hadoop/share/hadoop/common/hadoop-common-2.7.3.jar

顯示成功



初始化hadoop集群

spark@master:~/spark/hadoop/etc/hadoop$?hadoop?namenode?-format

若紅色方框中的status為0則代表初始化成功,若為1,則為失敗

啟動集群

spark@master:~/spark/hadoop/etc/hadoop$?$HADOOP_HOME/sbin/start-all.sh

然后在瀏覽器中輸入?http://master_ip:50070/? ?master_ip代表master的ip地址端口號為50070


至此,hadoop集群已全部安裝完畢。

?

我們將在下一篇文章中,進一步安裝spark集群。。。。

轉(zhuǎn)載于:https://blog.51cto.com/lefteva/1874033

總結(jié)

以上是生活随笔為你收集整理的spark集群详细搭建过程及遇到的问题解决(三)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。