Apache Spark 是一個新興的大數據處理通用引擎,提供了分布式的內存抽象。Spark 最大的特點就是快,可比 Hadoop MapReduce 的處理速度快 100 倍。本文使用一臺電腦上構建多個虛擬機的方法來模擬集群。
1.安裝Hadoop并搭建好Hadoop集群環境
Spark分布式集群的安裝環境,需要事先配置好Hadoop的分布式集群環境。如果沒有配置好Hadoop的分布式集群環境,Hadoop 2.7分布式集群環境搭建根據相應說明安裝。
2.安裝Spark
在master節點機器上,訪問Spark官方下載地址,按照如下圖下載。
Paste_Image.png
下載完成后,執行如下命令:
sudo tar -zxf ~/下載/spark-2.0.2-bin-without-hadoop.tgz -C /usr/local/
cd /usr/local
sudo mv ./spark-2.0.2-bin-without-hadoop/ ./spark
sudo chown -R hadoop ./spark
3.配置環境變量
在master節點主機的終端中執行如下命令:
vim .bashrc
在.bashrc添加如下配置:
export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
4.Spark配置
把master 作為 Master 節點,兩個node1、node2作為Worker節點。
在master節點主機上進行如下操作:
4.1 slaves
將 slaves.template 拷貝到 slaves
cd /usr/local/spark/
cp ./conf/slaves.template ./conf/slaves
slaves文件設置Worker節點。編輯slaves內容,把默認內容localhost替換成如下內容:
node1
node2
4.2 spark-env.sh
將 spark-env.sh.template 拷貝到 spark-env.sh
cp ./conf/spark-env.sh.template ./conf/spark-env.sh
編輯spark-env.sh,添加如下內容:
export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
export SPARK_MASTER_IP=192.168.146.130
SPARK_MASTER_IP 指定 Spark 集群 master 節點的 IP 地址;
配置好后,將master主機上的/usr/local/spark文件夾復制到各個節點上。在master主機上執行如下命令:
cd /usr/local/
tar -zcf ~/spark.master.tar.gz ./spark
cd ~
scp ./spark.master.tar.gz node1:/home/hadoop
scp ./spark.master.tar.gz node2:/home/hadoop
在node1,node2節點上執行:
sudo rm -rf /usr/local/spark/
sudo tar -zxf ~/spark.master.tar.gz -C /usr/local
sudo chown -R hadoop /usr/local/spark
5.啟動Spark集群
5.1 啟動hadoop集群
cd /usr/local/hadoop/
sbin/start-all.sh
5.2 啟動spark集群
cd /usr/local/spark/
sbin/start-all.sh
5.3 在瀏覽器上查看Spark獨立集群管理器的集群信息
Paste_Image.png