spark 提交任务

一 提交命令及参数解释

spark-sumbit
参数解释
–class程序运行的主类,如果有包,得加上包名
–master指明任务提交到哪里运行
–deploy-modedriver在哪里启动,默认是苦户端
–driver-memorydriver运行的内存
–name应用程序的名称
–jars用逗号分隔的本地 jar 包,设置后,这些 jar 将包含在 driver 和 executor 的 classpath 下
–driver-coresDriver 的核数,默认是1。在 yarn 或者 standalone 下使用
–executor-memory每个 executor 的内存,默认是1G
–total-executor-cores所有 executor 总共的核数。仅仅在 mesos 或者 standalone 下使用
–num-executors启动的 executor 数量。默认为2。在 yarn 下使用
–executor-core每个 executor 的核数。在yarn或者standalone下使用

二 提交任务
以SparkPi为例子
1 local模式

bin/spark-submit --class org.apache.spark.examples.SparkPi --master local[*]  /opt/module/spark-2.2.0-bin-hadoop2.7/examples/jars/spark-examples_2.11-2.2.0.jar  100

2 集群方式提交
client和cluster的区别:以client提交,client会作为driver,那么当提交多个任务时,会使用client较多的资源。以cluster提交,client不作为dirver,而是由集群去选取一个节点作为driver。

2.11 standlone
使用spark本身的资源管理器去提交:
client:

bin/spark-submit --class org.apache.spark.examples.SparkPi --master spark://hadoop1:7077  /opt/module/spark-2.2.0-bin-hadoop2.7/examples/jars/spark-examples_2.11-2.2.0.jar  100 

cluster:

bin/spark-submit --class org.apache.spark.examples.SparkPi --master spark://hadoop:6066 --deploy-mode cluster /opt/module/spark-2.2.0-bin-hadoop2.7/examples/jars/spark-examples_2.11-2.2.0.jar  100 

这里提交任务的时候不会显示结果,可以到web端去查看结果
运行过程中出现warn的解决办法
在这里插入图片描述
查看spark的web端:master ip:8088
在这里插入图片描述
把提交任务时的master的端口号改成页面中的REST URL

2.12yarn集群
首先配置yarn-site-xmlwen文件,加上:

  <!--是否启动一个线程检查每个任务正使用的物理内存量,如果任务超出分配值,则直接将其杀掉,默认是true -->
  <property>
      <name>yarn.nodemanager.pmem-check-enabled</name>
      <value>false</value>
</property>
<!--是否启动一个线程检查每个任务正使用的虚拟内存量,如果任务超出分配值,则直接将其杀掉,默认是true -->
<property>
      <name>yarn.nodemanager.vmem-check-enabled</name>
       <value>false</value>
</property>

再配置spark-env.sh:

YARN_CONF_DIR=/opt/module/hadoop-2.7.2/etc/hadoop

后面跟的是yarn的配置文件的路径
提交任务-yarn
–master yarn
–deploy-mode client/cluster

三 提交文件

在提交任务时,我们可能需要用到本地得文件,或者hdfs文件

位置命令
本地localfile:///后面再跟上本地路径,(file后面是三个斜杠)
集群hdfshdfs://namenode的ip:端口/文件路径

下面是读取hdfs上的input.txt 文件。然后结果输出hdfs上的output1下。

 bin/spark-submit --class sparkWordCount --master spark://hadoop1:7077 /home/hadoop/sparkword-1.0-SNAPSHOT.jar hdfs://hadoop1:9000/usr/hadoop/input/input.txt hdfs://hadoop1:9000/usr/hadpoop/output/output1

其中hdfs://hadoop1:9000 为namenode的地址,可以在core-site.xml中找到。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值