spark單機部署及樣例運行


spark單機運行部署

環境預裝

需要預先下載jdk和spark。機器使用centos6.6(推薦)。然后依次運行

[root@spark-master root]# cd /root

#安裝必要的軟件
[root@spark-master root]# yum install -y tar git curl wget

#下載jdk
[root@spark-master root]# wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie"  http://download.oracle.com/otn-pub/java/jdk/8u91-b14/jdk-8u91-linux-x64.rpm

#安裝jdk
[root@spark-master root]# rpm -ivh jdk-8u91-linux-x64.rpm

#下載spark
[root@spark-master root]# wget http://mirrors.hust.edu.cn/apache/spark/spark-1.6.2/spark-1.6.2-bin-hadoop2.6.tgz
  
#解壓spark
[root@spark-master root]# tar xzvf spark-1.6.2-bin-hadoop2.6.tgz

配置

  1. 關閉selinux。setenfore 0
  2. 通過hostname查看機器名,然后加入到/etc/hosts中。
  3. 配置/etc/profile。在文件最后添加export JAVA_HOME=/usr/java/jdk1.8.0_91。然后運行source /etc/profile使其生效。

運行spark服務

啟動spark master服務

[root@spark-master root]# cd /root/spark-1.6.2-bin-hadoop2.6
[root@spark-master spark-1.6.2-bin-hadoop2.6]# ./sbin/start-master.sh

啟動spark node服務

[root@spark-master root]# cd /root/spark-1.6.2-bin-hadoop2.6
[root@spark-master spark-1.6.2-bin-hadoop2.6]# ./sbin/start-slave.sh spark://node1:7077

node1為機器名。根據實際的機器名進行修改。

spark樣例運行

通過pyspark進行運算

這里以統計/etc/profile的行數為例。

[root@spark-master root]# cd /root/spark-1.6.2-bin-hadoop2.6/bin
[root@spark-master bin]# ./pyspark --master local[2]

# 導入數據
>>> distFile = sc.textFile("/etc/profile")

# 統計行數
>>> distFile.count()

這里local[2]代表了在本地啟動兩個線程模擬node進行計算。如果搭建完成了本地的搭建,即可以使用./pyspark --master spark://node1:7077,從而使用本地的node進行計算。

任務提交

pyspark是使用交互的方式進行提交任務。當然也可以通過spark-submit進行提交。

首先創建test.py文件,文件內容如下:

from pyspark import SparkContext
sc = SparkContext("local", "Simple App")
distFile = sc.textFile("/etc/profile")
print distFile.count()

使用spark-submit提交任務。

[root@spark-master root]# cd /root/spark-1.6.2-bin-hadoop2.6
[root@spark-master spark-1.6.2-bin-hadoop2.6]# ./bin/spark-submit --master local[2] test.py

參考資料


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM