Spark安裝與配置

Apache Spark是一個開源集羣運算框架,最初是由加州大學柏克萊分校AMPLab所開發。相對於Hadoop的MapReduce會在運行完工作後將中介資料存放到磁盤中,Spark使用了存儲器內運算技術,能在資料尚未寫入硬盤時即在存儲器內分析運算。Spark在存儲器內運行程序的運算速度能做到比Hadoop MapReduce的運算速度快上100倍,即便是運行程序於硬盤時,Spark也能快上10倍速度。Spark允許用戶將資料加載至集羣存儲器,並多次對其進行查詢,非常適合用於機器學習算法。

使用Spark需要搭配集羣管理員和分佈式存儲系統。Spark支持獨立模式(本地Spark集羣)、Hadoop YARN或Apache Mesos的集羣管理。在分佈式存儲方面,Spark可以和 Alluxio, HDFS、 Cassandra、OpenStack Swift和Amazon S3等接口搭載。 Spark也支持僞分佈式(pseudo-distributed)本地模式,不過通常只用於開發或測試時以本機文件系統取代分佈式存儲系統。在這樣的情況下,Spark僅在一臺機器上使用每個CPU核心運行程序。

在2014年有超過465位貢獻者投入Spark開發,讓其成爲Apache軟件基金會以及大數據衆多開源項目中最爲活躍的項目。

https://www.apache.org/dyn/closer.lua/spark/spark-3.0.1/spark-3.0.1-bin-hadoop2.7.tgz

將安裝包上傳至Linux系統,這裡上傳至/root。

$ sudo tar -zxf spark-3.0.1-bin-hadoop2.7.tgz

$ vim /etc/profile

寫入如下內容

export SPARK_HOME=/root/spark-3.0.1-bin-hadoop2.7

export PATH=$SPARK_HOME/bin

應用環境變量

$ source /etc/profile

$ cp /root/spark-3.0.1-bin-hadoop2.7/conf/spark-env.sh.template /root/spark-3.0.1-bin-hadoop2.7/conf/spark-env.sh

修改配置文件

$ vim /root/spark-3.0.1-bin-hadoop2.7/conf/spark-env.sh

寫入如下內容

export JAVA_HOME=/usr/java/jdk1.8.0_261-amd64

export SPARK_MASTER_IP=localhost

export SPARK_MASTER_PORT=7077

注:JAVA_HOME作爲安裝服務器java路徑。

$ cp /root/spark-3.0.1-bin-hadoop2.7/conf/slaves.template /root/spark-3.0.1-bin-hadoop2.7/conf/slaves

修改配置文件

$ vim /root/spark-3.0.1-bin-hadoop2.7/conf/slaves

寫入如下內容,在文件中添加子節點所在位置(Worker節點)

localhost

進入Spark的sbin目錄下

$ cd /root/spark-3.0.1-bin-hadoop2.7/sbin

啓動spark master服務

$ start-master.sh

啓動spark slave服務

$ start-slave.sh spark://localhost:7077

查看運行進程情況

$ jps

查看到有Master和Worker進程即爲啓動成功。

舉報