Ubuntu18.04.1 LTS 安裝Spark

Spark部署模式主要有四種:Local模式(單機模式)、Standalone模式(使用Spark自帶的簡單集羣管理器)、YARN模式(使用YARN作爲集羣管理器)和Mesos模式(使用Mesos作爲集羣管理器)。

本文進行Local模式(單機模式)的 Spark2.1.0版本安裝。安裝spark前需保證:Hadoop2.7.1或以上與Java JDK1.8或以上均已正確安裝並配置

spark下載:http://spark.apache.org/downloads.html

sudo tar -zxf ~/Downloads/spark-2.1.0-bin-without-hadoop.tgz -C /usr/local/
cd /usr/local
sudo mv ./spark-2.1.0-bin-without-hadoop/ ./spark
sudo chown -R hadoop:hadoop ./spark          # 此處的 hadoop 爲你的用戶名

安裝後,還需要修改Spark的配置文件spark-env.sh

cd /usr/local/spark
cp ./conf/spark-env.sh.template ./conf/spark-env.sh

編輯spark-env.sh文件(vim ./conf/spark-env.sh),在第一行添加以下配置信息:

export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)

有了上面的配置信息以後,Spark就可以把數據存儲到Hadoop分佈式文件系統HDFS中,也可以從HDFS中讀取數據。如果沒有配置上面信息,Spark就只能讀寫本地數據,無法讀寫HDFS數據。

然後通過如下命令,修改環境變量

vim ~/.bashrc

在.bashrc文件中添加如下內容

export JAVA_HOME=/usr/lib/jvm/default-java
export HADOOP_HOME=/usr/local/hadoop
export SPARK_HOME=/usr/local/spark
export PYTHONPATH=$SPARK_HOME/python:$SPARK_HOME/python/lib/py4j-0.10.4-src.zip:$PYTHONPATH
export PYSPARK_PYTHON=python3
export PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PATH

PYTHONPATH環境變量主要是爲了在Python3中引入pyspark庫,PYSPARK_PYTHON變量主要是設置pyspark運行的python版本。
.bashrc中必須包含JAVA_HOME,HADOOP_HOME,SPARK_HOME,PYTHONPATH,PYSPARK_PYTHON,PATH這些環境變量。如果已經設置了這些變量則不需要重新添加設置。

接着還需要讓該環境變量生效,執行如下代碼:

source ~/.bashrc

配置完成後就可以直接使用,不需要像Hadoop運行啓動命令。
通過運行Spark自帶的示例,驗證Spark是否安裝成功。

cd /usr/local/sparkbin/run-example SparkPi

找到pi的例子(2>&1 可以將所有的信息都輸出到 stdout 中):

bin/run-example SparkPi 2>&1 | grep "Pi is"

這裏涉及到Linux Shell中管道的知識,詳情可以參考Linux Shell中的管道命令
過濾後的運行結果如下圖示,可以得到π 的 5 位小數近似值:
在這裏插入圖片描述

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