Spark的介绍和集群部署
Posted lyr999736
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark的介绍和集群部署相关的知识,希望对你有一定的参考价值。
介绍 |
1.spark处理大数据的统一分析计算引擎;
a.速度:在迭代循环的计算模型下,spark比Hadoop快100倍;
b.易用性:spark提供多种语言的API,如Java、Python、Scala、R、SQL等
c.扩展性:在spark RDD基础上,提供一整套的分析计算模型:spark SQL、spark Stresaming、spark MLLib和图计算;
d.运行: spark支持在hadoop、Hadoop, Apache Mesos, Kubernetes, standalone, or in the cloud.
2.spark安装部署:
0).版本选型:spark2.1.2。依赖scala2.11.8
1).下载spark2.1.2.tar.gz
2).解压安装:
$>cd /home/hyxy/soft/
$>cp /mnt/hgfs/2.安装环境/download/apache-spark/spark-2.1.2-bin-hadoop2.7.tgz .
$>tar -zxvf spark-2.1.2-bin-hadoop2.7.tgz
$>ln -s spark-2.1.2-bin-hadoop2.7 spark
3).配置环境变量
修改【~/.bash_profile】,在文件尾部追加以下内容:
#spark install
export SPARK_HOME=/home/hyxy/soft/spark
export PATH=$SPARK_HOME/bin:$SPARK_HOME/sbin:$PATH
$>source ~/.bash_profile
4).至此,单机版搭建完成!
$>spark-shell
访问WebUI:HTTP://master:4040
集群模式部署 |
0.说明:如果现有的集群框架中存在MR的相关应用,同时相关的MR无法转换为Spark应用的,集群选型为Spark On Yarn;
如果现有的集群框架中只有Spark应用,那么建议采用spark Standalone模式;
1.spark可以运行在不同的计算引擎上,所以集群模式安装分不同种情况:
说明:spark的Standalone模式和Spark on Yarn占比比较多。
a.spark的Standalone集群模式安装
1.复制三个文件,并修改:
$>cp spark-env.sh.template spark-env.sh
添加以下内容,注意:“=”附近无空格:
export JAVA_HOME=/home/hyxy/soft/jdk
export SPARK_MASTER_HOST=master
export SPARK_MASTER_PORT=7077
$>cp slaves.template slaves
添加工作节点(Worker),如下:
master
slave1
slave2
$>cp spark-defaults.conf.template spark-defaults.conf
2.远程scp复制spark安装目录至其它节点:slave1和slave2;
$>scp -r ~/soft/spark-2.1.2-bin-hadoop2.7/ [email protected]:/home/hyxy/soft/
$>ln -s spark-2.1.2-bin-hadoop2.7 spark //在Slave1节点上
3.分别修改slave1、slave2等的环境变量;
4.开启spark Standalone集群的守护进程
$>start-master.sh //开启spark的Master守护进程
$>start-slaves.sh //开启spark的Worker守护进程
5.测试
访问WebUI界面:http://master:8080
$>spark-shell --master spark://master:7077
观察WebUI的网页说明;
b.Spark on Yarn集群模式安装
1).修改spark-env.sh文件,添加以下内容:
export HADOOP_CONF_DIR=/home/hyxy/soft/hadoop/etc/hadoop
2).测试:
开启hadoop:
$>zkserver.sh start
$>start-dfs.sh
$>start-yarn.sh
启动spark:
$>spark-shell --master yarn-client
3).注意:抛异常,资源调用超出上限,修改默认校验
修改{HADOOP_HOEM/etc/hadoop}/yarn-site.xml
<property>
<name>yarn.nodemanager.pmem-check-enabled</name>
<value>false</value>
</property>
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>
分发至集群其它节点,重启Hadoop,即可!!
以上是关于Spark的介绍和集群部署的主要内容,如果未能解决你的问题,请参考以下文章