Spark 安裝和配置

單機(jī)搭建

環(huán)境要求

  1. 安裝JDK,參考

  2. 安裝Scala 2.10.4,參考

  3. 配置sshd(不是必須的)

$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
mac 啟動(dòng)sshd
$ sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
查看啟動(dòng)
$ sudo launchctl list | grep ssh
輸出- 0 com.openssh.sshd 表示啟動(dòng)成功
停止sshd服務(wù)
$ sudo launchctl unload -w /System/Library/LaunchDaemons/ssh.plist
  1. 安裝Hadoop,參考

  2. 格式化HDFS文件系統(tǒng),啟動(dòng)Hadoop

$HADOOP_HOME/bin/hdfs namenode -format
# 進(jìn)入sbin/ 
$ start-all.sh
  1. 執(zhí)行jps 查看是否正常啟動(dòng)
$ jps
30256 Jps
29793 DataNode
29970 SecondaryNameNode
29638 NameNode
30070 ResourceManager
30231 NodeManager

打開(kāi) http://localhost:50070/explorer.html 網(wǎng)頁(yè)查看hadoop目錄結(jié)構(gòu),說(shuō)明安裝成功

開(kāi)始安裝Spark

  1. 下載Spark壓縮包
    解壓spark壓縮包
$ tar xvzf spark.1.6.tar.gz

加入環(huán)境變量

$ vi ~/.bashrc
# 添加如下內(nèi)容
SCALA_HOME=/Users/ysisl/app/spark/scala-2.10.4
SPARK_HOME=/Users/ysisl/app/spark/spark-1.6.1-bin-hadoop2.6

設(shè)置配置文件

$ cd spar-1.6.1-bin-hadoop2.6/conf
$ cp spark-env.sh.template spark-env.sh
$ vi spar-env.sh
# 添加如下內(nèi)容
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home
export SCALA_HOME=/Users/ysisl/app/spark/scala-2.10.4
export HADOOP_CONF_DIR=/Users/ysisl/app/hadoop/hadoop-2.6.4/etc/hadoop
export SPARK_MASTER_IP=localhost
export SPARK_WORKER_CORES=2
export SPARK_WORKER_MEMORY=2g

$ cp slaves.template slaves

默認(rèn)slaves現(xiàn)在就主機(jī)一臺(tái)

  1. 啟動(dòng)Spark
$ sbin/start-all.sh

jps 查看到多出一個(gè)Master,worker進(jìn)程

$ jps
29793 DataNode
29970 SecondaryNameNode
30275 Master
30468 SparkSubmit
29638 NameNode
30070 ResourceManager
30231 NodeManager
30407 Worker
30586 Jps

配置scala 、spark 、 hadoop 環(huán)境變量加入PATH ,方便執(zhí)行

$ vi ~/.bashrc
export HADOOP_HOME=/Users/ysisl/app/hadoop/hadoop-2.6.4
export SCALA_HOME=/Users/ysisl/app/spark/scala-2.10.4
export SPARK_HOME=/Users/ysisl/app/spark/spark-1.6.1-bin-hadoop2.6
export PATH="${HADOOP_HOME}/bin:${SCALA_HOME}/bin:${SPARK_HOME}/bin:$PATH"
  1. 測(cè)試運(yùn)行
    準(zhǔn)備一個(gè)csv文件,路徑 ../hadoop/test.csv
    查看HDFS文件系統(tǒng)結(jié)構(gòu), 執(zhí)行$ hadoop fs -lsr /
    新建HDFS目錄 ,$ hadoop fs -mkdir /test
    上傳文件到目錄,$ hadoop fs -put ../hadoop/test.csv /test/
    查看已創(chuàng)建的目錄文件, $ hadoop fs -lsr /
    執(zhí)行 spark-shell
$ spark-shell
scala > val file=sc.textFile("hdfs:/test/test.csv")
scala > val count=file.flatMap(line=>line.split(" ")).map(word=>(word,1)).reduceByKey(_+_)
scala > count.collect

查看執(zhí)行狀態(tài)

http://localhost:8080,查看spark 集群運(yùn)行情況。 此端口一般與其他端口沖突
在spark-env.sh 中加入export SPARK_MASTER_WEBUI_PORT=98080來(lái)指定端口

http://localhost:4040/jobs/ ,查看 spark task job運(yùn)行情況

http://localhost:50070/ hadoop集群運(yùn)行情況

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容