Spark---集群搭建

举报
前进的蜗牛 发表于 2023/11/22 10:51:22 2023/11/22
【摘要】 ​ Standalone集群搭建与Spark on Yarn配置1、StandaloneStandalone集群是Spark自带的资源调度框架,支持分布式搭建,这里建议搭建Standalone节点数为3台,1台master节点,2台worker节点,这虚拟机中每台节点的内存至少给2G和2个core,这样才能保证后期Spark基于Standalone的正常运行。搭建Standalone集群的步...

 Standalone集群搭建与Spark on Yarn配置

1、Standalone

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

1)、下载安装包,解压

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

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

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


tar -zxvf ./spark-2.3.1-bin-hadoop2.0.tgz

2).改名

mv ./spark-2.3.1-bin-hadoop2.6 spark-2.3.1

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

mv  slaves.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

5).同步到其他节点上

scp -r ./spark-2.3.1/ mynode2:'pwd'
scp -r ./spark-2.3.1/ mynode3:'pwd'

6).启动集群

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

./start-all.sh

7).搭建客户端

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

注意:

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

  • 修改start-master.sh即可。

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

删除临时环境变量:

2、yarn

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

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

<!-- 关闭虚拟内存检查 -->
<property>
	<name>yarn.nodemanager.vmem-check-enabled</name>
	<value>false</value>
</property>

二、Spark Pi任务测试

Spark PI案例:

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



【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。