在Ubuntu下搭建Spark群集


前一篇文章中,我們已經搭建好了Hadoop的群集,接下來,我們就是需要基於這個Hadoop群集,搭建Spark的群集。由於前面已經做了大量的工作,所以接下來搭建Spark會簡單很多。

首先打開三個虛擬機,現在我們需要安裝Scala,因為Spark是基於Scala開發的,所以需要安裝Scala。在Ubuntu下安裝Scala很簡單,我們只需要運行

sudo apt-get install scala

就可以安裝Scala了。

安裝完成后運行scala -version可以看到安裝的Scala的版本,我現在2.11版,安裝目錄是在/usr/share/scala-2.11 。

接下來下載Spark。到官方網站,找到最新版的Spark的下載地址,選擇Hadoop版本,

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

wget http://spark下載地址

當下載完畢后解壓文件:

tar xvf spark-2.0.2-bin-hadoop2.7.tgz

接下來我們需要將解壓的文件夾移動到指定目錄,因為之前我們Hadoop安裝到/usr/local/hadoop,所以我們也可以把Spark放在/usr/local/spark下:

sudo mv spark-2.0.2-bin-hadoop2.7 /usr/local/spark

進入spark文件夾下的conf文件夾,里面有個spark-env.sh.template文件,是spark環境變量設置的目標,我們可以復制一個出來:

cp spark-env.sh.template spark-env.sh

然后編輯該文件

vi spark-env.sh

在文件的末尾我們添加上以下內容:

export SCALA_HOME=/usr/share/scala-2.11 
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 
export HADOOP_HOME=/usr/local/hadoop 
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop 
SPARK_MASTER_IP=master 
SPARK_LOCAL_DIRS=/usr/local/spark 
SPARK_DRIVER_MEMORY=1G 
export LD_LIBRARY_PATH=/usr/local/hadoop/lib/native/:$LD_LIBRARY_PATH

這里的內容是根據我虛擬機的環境來的,如果安裝的版本和路徑不一樣,可以根據實際情況更改。

接下來設置slaves文件。

cp slaves.template slaves
vi slaves

將內容改為

slave01

slave02

Spark在一台機器上就算配置完畢,接下來在另外兩台機器上也做一模一樣的配置即可。

啟動Spark

在master上,我們先啟動Hadoop,然后運行

/usr/local/spark/sbin/start-all.sh

便可啟動Spark。

運行jps看看Java進程:

2929 Master
2982 Jps
2294 SecondaryNameNode
2071 DataNode
1929 NameNode
2459 ResourceManager
2603 NodeManager

發現比Hadoop啟動的時候多了Master進程。

切換到slave01節點上,運行JPS,看看進程:

1889 Worker
1705 NodeManager
1997 Jps
1551 DataNode

這里比Hadoop的時候多了一個Worker進程。說明我們的Spark群集已經啟動成功。

下面訪問Spark的網站:

http://192.168.100.40:8080/

可以看到2個worker都啟動。

image

最后,我們運行一下Spark的示例程序:

/usr/local/spark/bin/run-example SparkPi 10 --slave01 local[2]

可以在結果中找到

Pi is roughly 3.14XXXXX

說明我們運行成功了。


免責聲明!

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



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