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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Spark集群配置

發(fā)布時(shí)間:2025/3/21 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spark集群配置 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.


Spark集群配置



環(huán)境:Ubuntu10.04, Hadoop 0.20.2, JDK 1.6, Spark 0.7.2, Scala 2.9.3


前置條件:

1、三臺(tái)機(jī)器,這里通過創(chuàng)建三個(gè)VMware虛擬機(jī)來模擬三臺(tái)物理機(jī)器
2、Linux系統(tǒng),例如Ubuntu、CentOS、Fedora等,這里是Ubuntu10.04
3、jdk for linux版本,這里是jdk-6u25-linux-i586.bin
4、hadoop0.20.2.tar.gz文件
5、Scala文件,這里是scala-2.9.3.tgz
6、Spark文件,我們選擇的是編譯好的一個(gè)Spark版本文件spark-0.7.2-prebuilt-hadoop1.tgz


一、安裝Linux系統(tǒng)(Ubuntu10.04 LTS)

$sudo apt-get update ?#更新系統(tǒng),需連網(wǎng)


二、更改主機(jī)名,映射IP地址

1、
$sudo gedit /etc/hostname ? ?#主機(jī)名master、slave1、slave2
$source /etc/hostname


2、
$ifconfig ?#查看IP地址
$sudo gedit /etc/hosts ? ? ? #IP地址與主機(jī)名的映射
192.168.117.138 master?
192.168.117.136 slave1
192.168.117.139 slave2
$source /etc/hosts ? ? ?#使文件修改生效(需要重啟生效)


三、安裝 JDK

1、將jdk-6u25-linux-i586.bin拷貝到/home/tom目錄下
或用命令$cp ~/Desktop/jdk-6u25-linux-i586.bin /home/tom


2、tom@master:~/home/tom$ chmod u+x jdk-6u25-linux-i586.bin
為文件所有者增加可執(zhí)行權(quán)限


3、執(zhí)行安裝文件:
$./jdk-6u25-linux-i586.bin


4、$sudo gedit /etc/profile
在profile文件中添加如下內(nèi)容:


export JAVA_HOME=/home/tom/jdk1.6.0_25
export JRE_HOME=/home/tom/jdk1.6.0_25/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

$source /etc/profile #使修改生效


5、
$java -version
顯示java version "1.6.0_25"。。。jdk安裝成功

四、安裝配置Hadoop集群

安裝配置SSH服務(wù),在master上空口令生成RSA密鑰,將master上生成的公鑰發(fā)送到slave1和slave2上對(duì)應(yīng)的目錄下。
我們這里使用的是hadoop0.20.2.tar.gz文件,Hadoop集群的詳細(xì)配置過程見上一篇日志 《Hadoop集群搭建》。


五、安裝 Scala 2.9.3

Spark 0.7.2 依賴于Scala 2.9.3, 所以我們要先安裝Scala 2.9.3.


1、將scala-2.9.3.tgz文件放到/home目錄下
$ tar -zxf scala-2.9.3.tgz #解壓
$ sudo mv scala-2.9.3 /usr/lib #將scala-2.9.3移動(dòng)至/usr/lib下


2、$ sudo gedit /etc/profile


在profile文件中添加如下內(nèi)容:


export SCALA_HOME=/usr/lib/scala-2.9.3
export PATH=$PATH:$SCALA_HOME/bin


保存并關(guān)閉profile文件


3、$source /etc/profile #使文件修改生效


4、$ scala -version
顯示出Scala的版本號(hào),Scala安裝成功


六、Spark standalone模式

1、解壓
$ tar -zxf spark-0.7.2-prebuilt-hadoop1.tgz


2、配置SPARK_EXAMPLES_JAR 環(huán)境變量
$sudo gedit /etc/profile
在profile文件中添加如下內(nèi)容:


export SPARK_EXAMPLES_JAR=$HOME/spark-0.7.2/examples/target/scala-2.9.3/spark-examples_2.9.3-0.7.2.jar


保存并關(guān)閉文件


3、$ source /etc/profile #使修改生效


4、設(shè)置 SPARK_HOME環(huán)境變量
$ sudo gedit /etc/profile


在profile文件中添加如下內(nèi)容:

export SPARK_HOME=$HOME/spark-0.7.2
export PATH=$PATH:$SPARK_HOME/bin


保存并關(guān)閉文件

$ source /etc/profile #使修改生效


5、測(cè)試Spark自帶實(shí)例SparkPi
$ cd ~/spark-0.7.2
$ ./run spark.examples.SparkPi local #本地模式運(yùn)行
程序結(jié)果為圓周率π的近似值


七、Spark集群模式

在master上安裝并配置Spark
1、將spark-0.7.2-prebuilt-hadoop1.tgz文件放到/home/tom目錄下

$ tar -zxf spark-0.7.2-prebuilt-hadoop1.tgz ?#解壓


2、設(shè)置SPARK_EXAMPLES_JAR 環(huán)境變量
$ sudo gedit ~/.bash_profile


在profile文件中添加如下內(nèi)容:

export SPARK_EXAMPLES_JAR=$HOME/spark-0.7.2/examples/target/scala-2.9.3/spark-examples_2.9.3-0.7.2.jar

保存并關(guān)閉文件


$ source /etc/profile #使修改生效


3、$ cd ~/spark-0.7.2/conf
$ mv spark-env.sh.template spark-env.sh #重命名


文件①spark-env.sh
$sudo gedit spark-env.sh


在conf/spark-env.sh 中設(shè)置SCALA_HOME
在spark-env.sh文件中添加如下內(nèi)容:

export SCALA_HOME=/usr/lib/scala-2.9.3
export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.19.x86_64

保存并關(guān)閉文件


$source spark-env.sh


文件②slaves
在conf/slaves, 添加從節(jié)點(diǎn)主機(jī)名, 一行一個(gè)
$ sudo gedit slaves
slave1
slave2

$source slaves


4、設(shè)置 SPARK_HOME環(huán)境變量
$ sudo gedit ~/profile


在profile文件中添加如下內(nèi)容:

export SPARK_HOME=$HOME/spark-0.7.2
export PATH=$PATH:$SPARK_HOME/bin

保存并關(guān)閉

$ source /etc/profile #生修改生效


5、在所有worker上安裝并配置Spark
將master上配置好的spark-0.7.2文件夾,拷貝到所有的worker。注意,三臺(tái)機(jī)器spark所在目錄必須一致,因?yàn)閙aster會(huì)登陸到worker上執(zhí)行命令,master認(rèn)為worker的spark路徑與自己一樣。


$ cd ?#進(jìn)入用戶目錄~下
$ scp -r spark-0.7.2 tom@slave1:~
$ scp -r spark-0.7.2 tom@slave2:~


6、啟動(dòng) Spark 集群
master上
$ cd ~/spark-0.7.2
$ bin/start-all.sh


查看守護(hù)進(jìn)程
$ jps
Jps
SecondaryNameNode
NameNode
DataNode
JobTracker
TaskTracker
Master
Worker

7、瀏覽master的web UI(默認(rèn)http://localhost:8080),這時(shí)可以看到所有的word節(jié)點(diǎn),以及他們的CPU個(gè)數(shù)和內(nèi)存等信息。?

八、Spark實(shí)例測(cè)試

1、運(yùn)行SparkPi例子
$ cd ~/spark-0.7.2
$ ./run spark.examples.SparkPi spark://master:7077


2、運(yùn)行Spark自帶的其他例子,SparkLR 和 SparkKMeans.


#Logistic Regression(邏輯回歸)
$./run spark.examples.SparkLR spark://master:7077
#KMeans
$ ./run spark.examples.SparkKMeans spark://master:7077 ./kmeans_data.txt 2 1


3、從HDFS讀取文件并運(yùn)行WordCount
$ cd ~/spark-0.7.2
$ hadoop fs -put README.md .
$ MASTER=spark://master:7077 ./spark-shell
scala> val file = sc.textFile("hdfs://master:9000/user/dev/README.md")
scala> val count = file.flatMap(line => line.split(" ")).map(word => (word, 1)).reduceByKey(_+_)
scala> count.collect()


4、停止 Spark 集群
$ cd ~/spark-0.7.2

$ bin/stop-all.sh


OVER!


總結(jié)

以上是生活随笔為你收集整理的Spark集群配置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

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