Spark---集群搭建

Standalone集群搭建与Spark on Yarn配置

1、Standalone

Standalone集群是Spark自带的资源调度框架,支持分布式搭建,这里建议搭建Standalone节点数为3台,1台master节点,2台worker节点,这虚拟机中每台节点的内存至少给2G和2个core,这样才能保证后期Spark基于Standalone的正常运行。搭建Standalone集群的步骤如下:

1)、下载安装包,解压

登录Spark官网下载Spark,官网地址:Spark官网链接

Spark---集群搭建_第1张图片

点击“Download”找到“ Spark release archives”找到对应的Spark版本下载。这里选择Spark2.3.1版本下载。

将下载好的Spark安装包上传到Spark Master节点,解压:

2)、改名

3)、进入安装包的conf目录下,修改或者复制slaves.template文件,去掉template后缀,在新的slaves文件中添加从节点。保存。

在slaves中配置worker节点:

4)、复制$SPARK_HOME/conf/spark-env.sh.template 为spark-env.sh,修改spark-env.sh内容:

SPARK_MASTER_HOST:master的ip

SPARK_MASTER_PORT:提交任务的端口,默认是7077

SPARK_WORKER_CORES:每个worker从节点能够支配的core的个数

SPARK_WORKER_MEMORY:每个worker从节点能够支配的内存数

JAVA_HOME:java的home,这里需要jdk8

Spark---集群搭建_第2张图片

5)、同步到其他节点上

6)、启动集群

进入sbin目录下,执行当前目录下的./start-all.sh

7)、搭建客户端

将spark安装包原封不动的拷贝到一个新的节点上,然后,在新的节点上提交任务即可。

注意:

  • 8080是Spark WEBUI界面的端口,7077是Spark任务提交的端口。
  • 修改master的WEBUI端口:
    • 修改$SPARK_HOME/conf/spark-env.sh即可【建议使用】:

  • 修改start-master.sh即可。

Spark---集群搭建_第3张图片

  • 也可以在Master节点上导入临时环境变量,只是作用于之后的程序,重启就无效了。

删除临时环境变量:

2、yarn

Spark 也可以基于Yarn进行任务调度,这就是所谓的Spark on Yarn,Spark基于Yarn进行任务调度只需要在Spark客户端做如下配置即可:

同时这里需要在每台NodeManager节点中将每台NodeManager的虚拟内存关闭,在每台NodeManager节点的$HADOOP_HOME/etc/hadoop/yarn-site.xml中加入如下配置:



	yarn.nodemanager.vmem-check-enabled
	false

二、Spark Pi任务测试

Spark PI案例:

Spark---集群搭建_第4张图片

Standalone提交命令:

./spark-submit --master spark://mynode1:7077 --class org.apache.spark.examples.SparkPi ../examples/jars/spark-examples_2.11-2.3.1.jar 100

Spark on YARN提交命令:

./spark-submit --master yarn --class org.apache.spark.examples.SparkPi ../examples/jars/spark-examples_2.11-2.3.1.jar 100

你可能感兴趣的:(Spark,spark,大数据,分布式)