spark安裝教程


1、準備工作
    scala-2.9.3:一種編程語言,下載地址:http://www.scala-lang.org/download/
    spark-1.4.0:必須是編譯好的Spark,如果下載的是Source,則需要自己根據環境使用SBT或者MAVEN重新編譯才能使用。  


    編譯好的 Spark下載地址:http://spark.apache.org/downloads.html。


2、安裝scala-2.9.3
#解壓scala-2.9.3.tgz
tar -zxvf scala-2.9.3.tgz
#配置SCALA_HOME
vi /etc/profile
#添加如下環境
export SCALA_HOME=/home/apps/scala-2.9.3
export PATH=.:$SCALA_HOME/bin:$PATH
#測試scala安裝是否成功
#直接輸入
scala
3、安裝spark-1.4.0
#解壓spark-1.4.0.tgz
tar -zxvf spark-1.4.0.tgz
#配置SPARK_HOME
vi /etc/profile
#添加如下環境
export SCALA_HOME=/home/apps/spark-1.4.0
export PATH=.:$SPARK_HOME/bin:$SPARK_HOME/sbin:$PATH
4、修改Spark配置文件
#複製slaves.template和 spark-env.sh.template各一份
cp  spark-env.sh.template  spark-env.sh
cp  slaves.template slaves
#slaves,此文件是指定子節點的主機,直接添加子節點主機名即可
    在spark-env.sh末端添加如下幾行:


#JDK安裝路徑
export JAVA_HOME=/root/app/jdk
#SCALA安裝路徑
export SCALA_HOME=/root/app/scala-2.9.3
#主節點的IP地址
export SPARK_MASTER_IP=192.168.1.200
#分配的內存大小
export SPARK_WORKER_MEMORY=200m
#指定hadoop的配置文件目錄
export HADOOP_CONF_DIR=/root/app/hadoop/etc/hadoop
#指定worker工作時分配cpu數量
export SPARK_WORKER_CORES=1
#指定spark實例,一般1個足以
export SPARK_WORKER_INSTANCES=1
#jvm操作,在spark1.0之後增加了spark-defaults.conf默認配置文件,該配置參數在默認配置在該文件中
export SPARK_JAVA_OPTS
    spark-defaults.conf中還有如下配置參數:


SPARK.MASTER    //spark://hostname:8080
SPARK.LOCAL.DIR    //spark工作目錄(做shuffle的目錄)
SPARK.EXECUTOR.MEMORY //spark1.0拋棄SPARK_MEM參數,使用該參數
5、測試spark安裝是否成功
在主節點機器上啓動順序
1、先啓動hdfs(./sbin/start-dfs.sh)
2、啓動spark-master(./sbin/start-master.sh)
3、啓動spark-worker(./sbin/start-slaves.sh)
4、jps查看進程有
    主節點:namenode、secondrynamnode、master
    從節點:datanode、worker
5、啓動spark-shell
15/06/21 21:23:47 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
15/06/21 21:23:47 INFO spark.SecurityManager: Changing view acls to: root
15/06/21 21:23:47 INFO spark.SecurityManager: Changing modify acls to: root
15/06/21 21:23:47 INFO spark.SecurityManager: SecurityManager: authentication disabled; ui acls disabled; users with view permissions: Set(root); users with modify permissions: Set(root)
15/06/21 21:23:47 INFO spark.HttpServer: Starting HTTP Server
15/06/21 21:23:47 INFO server.Server: jetty-8.y.z-SNAPSHOT
15/06/21 21:23:47 INFO server.AbstractConnector: Started SocketConnector@0 .0.0.0:38651
15/06/21 21:23:47 INFO util.Utils: Successfully started service 'HTTP class server' on port 38651.
Welcome to
      ____              __
     / __/__  ___ _____/ /__
    _\ \/ _ \/ _ `/ __/  '_/

   /___/ .__/\_,_/_/ /_/\_\   version 1.4.0



進入Spark的Web管理頁面: http://master:8080   http://master:4040


編寫測試案例:

Wordcount示例


列表內容
在命令行輸入:spark-shell開啓spark(scala)


把輸入文件加載進RDD:
val textFile = sc.textFile("YOUR_INPUT_FILE")
1
1
MapReduce操作,以work爲key,1爲value:
 val wordCounts = textFile.flatMap(line => line.split(" ")).map(word => (word, 1)).reduceByKey((a, b) => a + b)
1
1
查看每個單詞出現的次數
  wordCounts.collect()



  1. 進入bin目錄,輸入./run-example SparkPi 10(迭代次數) 計算π的值

案例  計算單詞出現頻率

找到 spark目錄下的  README.md 提交到 hdfs文件系統下然後輸入




測試成功~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章