美文网首页我爱编程
19.spark集群运行模式的学习

19.spark集群运行模式的学习

作者: 6cc89d7ec09f | 来源:发表于2018-03-09 17:14 被阅读107次

1 spark的集中运行模式

image.png

local是基于本地运行的,例如上节课我们运行的jar就是通过本地

 bin/spark-submit --master local[2] /opt/jars/sparkTest.jar hdfs://bigdata-pro01.kfk.com:8020/user/datas/stu.txt

Standalone用的不多,但是身为程序员必须得会
在YARN的平台运行,是大多数公司的首选
基于Mesos运行,可以spark对应的hadoop版本就不需要那么苛刻了

2、 Standalone运行模式的配置和测试

1、原理

image.png

sparkcontext向cluster提交任务。(任务被细分为task)
cluster为sparkcontext分配资源(资源就是work,包括了cpu,内存)
worker内有executor执行具体的task。

2、配置

1、把log4j.properties.template修改为log4j.properties,内容无需修改
2、把slaves.template修改为slaves。里面写上worker的ip,暂且写节点2

bigdata-pro02.kfk.com

3、把spark-env.sh.template改为spark-env.sh

JAVA_HOME=/opt/modules/jdk1.8.0_162
SCALA_HOME=/opt/modules/scala-2.11.8
SPARK_CONF_DIR=/opt/modules/spark-2.20-bin-custom/conf
#HADOOP_CONF_DIR 这个暂时不启动,因为还没配置好
SPARK_MASTER_HOST=bigdata-pro02.kfk.com
SPARK_MASTER_PORT=7077
SPARK_MASTER_WEBUI_PORT=8080
SPARK_WORKER_CORES=1
SPARK_WORKER_MEMORY=1g
SPARK_WORKER_PORT=7078
SPARK_WORKER_WEBUI_PORT=8081

4、启动服务

sbin/start-all.sh

启动成功 jps可看到2个进程
7363 Worker
7303 Master
可以查看监控页面http://bigdata-pro02.kfk.com:8080/

5、客户端模式启动测试stu.txt

bin/spark-shell --master spark://bigdata-pro02.kfk.com:7077

val dataset = spark.read.textFile("file:///opt/datas/stu.txt")
dataset.count()

6、集群模式下启动用stu.txt测试standalone

bin/spark-submit --master spark://bigdata-pro02.kfk.com:7077 --deploy-mode cluster /opt/jars/sparkTest.jar file:///opt/datas/stu.txt

结果需要去监控页面上去看


image.png

3、spark on yarn的运行模式

前提

所有节点上的java_home都需要改成1.8。hadoop上的env文件的javahome也需要改

在spark-env.sh配置HADOOP_CONF_DIR否则会报下面的错

Exception in thread "main" java.lang.Exception: When running with master 'yarn' either HADOOP_CONF_DIR or YARN_CONF_DIR must be set in the environment.
        at org.apache.spark.deploy.SparkSubmitArguments.validateSubmitArguments(SparkSubmitArguments.scala:263)
        at org.apache.spark.deploy.SparkSubmitArguments.validateArguments(SparkSubmitArguments.scala:240)
        at org.apache.spark.deploy.SparkSubmitArguments.<init>(SparkSubmitArguments.scala:116)
        at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:112)
        at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)

启动dfs
启动yarn
启动spark的服务

spark启动

客户端启动:一般用于测试,自测。企业的启动任务都用spark-submit

bin/spark-shell --master yarn --deploy-mode client

spark-submit

要保证虚拟机内存足够大

在spark2.0之后:yarn和spark通讯的时候,如果我们程序中sparkSession创建的时候设置了master("local"),也会报错, 因为spark不会主动和yarn通讯报错。报错信息是找不到hdfs://ns。。。

日志输出标准需要改为info,否则报错信息出不来

bin/spark-submit --class com.sparktest.test --master yarn --deploy-mode cluster /opt/jars/sparkTest.jar file:///opt/datas/stu.txt

相关文章

  • 19.spark集群运行模式的学习

    1 spark的集中运行模式 local是基于本地运行的,例如上节课我们运行的jar就是通过本地 Standalo...

  • 从零开始学习Spark(八)在集群上运行Spark

    在集群上运行Spark 之前的所有实例中Spark都是运行在本地模式下,实际项目中应该要运行到集群中。本地模式下的...

  • zookeeper 安装及监控

    Zookeeper有三种运行模式:单机模式、伪集群模式和集群模式。注意的是一般zookeeper集群由3~5台服务...

  • 数据相关

    Spark有3种运行模式(分布式部署方式):独立集群运行模式(Standlone)、YARN运行模式、Mesos运...

  • 部署经验

    zookeeper调试集群 Zookeeper源码分析(四) ----- 集群模式(replicated)运行 码...

  • Spark内核分析之Spark的HA源码分析

    Spark作业运行的集群环境有两种,分别基于standalone模式和Yarn集群模式。我们知道Yarn集群提供了...

  • Zookeeper 安装与部署

    Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台...

  • 3.spark运行模式

    spark支持的运行模式:本地模式、本地集群模式、standalone模式、yarn模式及mesos模式。 本地模...

  • RabbitMq安装配置

    rabbitmq有3种模式,集群模式2种• 单机模式:即单机情况不做集群,就单独运行一个rabbitmq而已。...

  • 【Spark】Spark 容错及 HA--Executor 异常

    Spark 支持多种运行模式,这些运行模式中的集群管理器会为任务分配运行资源,在运行资源中启动 Executor,...

网友评论

    本文标题:19.spark集群运行模式的学习

    本文链接:https://www.haomeiwen.com/subject/eratfftx.html