首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用yarn rest api提交作业到spark?我想使用YARN REST API提交作业给spark

使用YARN REST API提交作业到Spark可以通过以下步骤实现:

  1. 确保你已经安装了YARN和Spark,并且配置正确。
  2. 首先,你需要创建一个JSON格式的作业描述文件,包含作业的相关参数和配置信息。例如,你可以创建一个名为job.json的文件,内容如下:
代码语言:txt
复制
{
  "application-id": "spark-application",
  "application-name": "My Spark Job",
  "am-container-spec": {
    "commands": {
      "command": "spark-submit --class com.example.MySparkJob --master yarn --deploy-mode cluster /path/to/your/spark/job.jar"
    },
    "environment": {
      "environment-variable": [
        {
          "name": "SPARK_HOME",
          "value": "/path/to/your/spark/home"
        }
      ]
    },
    "local-resources": {
      "resource": [
        {
          "name": "your-spark-job.jar",
          "type": "FILE",
          "visibility": "APPLICATION",
          "uri": "file:///path/to/your/spark/job.jar"
        }
      ]
    }
  },
  "unmanaged-AM": false,
  "max-app-attempts": 1,
  "resource": {
    "memory": 1024,
    "vCores": 1
  },
  "application-type": "SPARK"
}

在这个文件中,你需要修改以下参数:

  • application-id:作业的唯一标识符。
  • application-name:作业的名称。
  • am-container-spec:AM(Application Master)容器的配置信息,包括命令、环境变量和本地资源等。
  • commands:AM容器启动时执行的命令,这里使用spark-submit命令提交Spark作业。
  • environment:AM容器的环境变量配置,这里设置了SPARK_HOME变量。
  • local-resources:AM容器使用的本地资源,这里指定了Spark作业的jar包。
  • resource:作业的资源需求,包括内存和虚拟核心数。
  • application-type:作业的类型,这里是SPARK。
  1. 使用curl或其他HTTP客户端发送POST请求,将作业描述文件提交给YARN REST API。假设你将作业描述文件保存为job.json,可以使用以下命令提交作业:
代码语言:txt
复制
curl -X POST -H "Content-Type: application/json" -d @job.json http://yarn-rest-api-url/v1/cluster/apps

其中,yarn-rest-api-url是YARN REST API的URL地址。

  1. YARN将会返回一个作业的提交状态和应用ID。你可以使用YARN REST API查询作业的状态和日志信息。

以上是使用YARN REST API提交作业到Spark的基本步骤。根据实际需求,你可以根据YARN REST API的文档进一步了解和调整作业的配置参数。

腾讯云提供了一系列与云计算相关的产品和服务,包括云服务器、云数据库、云存储等。你可以访问腾讯云官网了解更多详情:腾讯云

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

使用 Livy Rest API 提交 spark 批量任务 (jar,Python, streaming)

Livy是一个开源的REST 接口,用于与Spark进行交互,它同时支持提交执行代码段和完整的程序。 ? image.png Livy封装了spark-submit并支持远端执行。.../bin/livy-server 这里假设spark使用yarn模式,所以所有文件路径都默认位于HDFS中。...如果是本地开发模式的话,直接使用本地文件即可(注意必须配置livy.conf文件,设置livy.file.local-dir-whitelist = directory,以允许文件添加到session)...jar包,假设提交的jar包位于hdfs中,路径为/usr/lib/spark/lib/spark-examples.jar curl -X POST --data '{"file": "/user/romain...: application/json" localhost:8998/batches {"id":1,"state":"running","log":[]} 如果终止任务,可以调用以下API: curl

3K30

如何使用Oozie API接口向Kerberos环境的CDH集群提交Spark作业

作业的方式有多种,前面Fayson介绍了Livy相关的文章主要描述如何在集群外节点通过RESTful API接口向CDH集群提交Spark作业以及《如何使用Oozie API接口向非Kerberos环境的...CDH集群提交Spark作业》,本篇文章主要介绍使用Oozie的API接口向Kerberos集群提交Spark作业。...Livy相关文章: 《Livy,基于Apache Spark的开源REST服务,加入Cloudera Labs》 《如何编译Livy并在非Kerberos环境的CDH集群中安装》 《如何通过Livy的RESTful...API接口向非Kerberos环境的CDH集群提交作业》 《如何在Kerberos环境的CDH集群部署Livy》 《如何通过Livy的RESTful API接口向Kerberos环境的CDH集群提交作业...Spark作业 [c3zybi2uw3.jpeg] 2.登录CM进入Yarn服务的“应用程序”菜单查看 [g0e4fmdt7z.jpeg] 3.打开Yarn的8088 Web界面查看 [vmql1ct622

2K70
  • 如何使用Oozie API接口向非Kerberos环境的CDH集群提交Spark作业

    作业的方式有多种,前面Fayson介绍了Livy相关的文章主要描述如何在集群外节点通过RESTful API接口向CDH集群提交Spark作业,本篇文章我们借助于oozie-client的API接口向非...Kerberos集群提交Spark作业。...Livy相关文章: 《Livy,基于Apache Spark的开源REST服务,加入Cloudera Labs》 《如何编译Livy并在非Kerberos环境的CDH集群中安装》 《如何通过Livy的RESTful...API接口向非Kerberos环境的CDH集群提交作业》 《如何在Kerberos环境的CDH集群部署Livy》 《如何通过Livy的RESTful API接口向Kerberos环境的CDH集群提交作业...Oozie-client的API接口向非Kerberos集群提交Spark作业 * creat_user: Fayson * email: htechinfo@163.com * creat_date

    1.4K70

    如何使用Oozie API接口向Kerberos环境的CDH集群提交Spark2作业

    Spark作业,文章中均采用Spark1来做为示例,本篇文章主要介绍如何是用Oozie API向Kerberos环境的CDH集群提交Spark2作业。...代码,向CDH集群提交Spark作业 [m50c1hlig4.jpeg] 2.登录CM进入Yarn服务的“应用程序”菜单查看 [yatnuxyeqy.jpeg] 3.打开Yarn的8088 Web界面查看...API向集群提交作业相关文章: 《如何使用Oozie API接口向非Kerberos环境的CDH集群提交Spark作业》 《如何使用Oozie API接口向非Kerberos环境的CDH集群提交Java...作业》 《如何使用Oozie API接口向非Kerberos环境的CDH集群提交Spark作业》 《如何使用Oozie API接口向Kerberos集群提交Java程序》 Livy相关文章: 《如何编译...Livy并在非Kerberos环境的CDH集群中安装》 《如何通过Livy的RESTful API接口向非Kerberos环境的CDH集群提交作业》 《如何在Kerberos环境的CDH集群部署Livy

    3.3K40

    如何使用CDSW在CDH集群通过sparklyr提交R的Spark作业

    1.文档编写目的 ---- 继上一章介绍如何使用R连接Hive与Impala后,Fayson接下来讲讲如何在CDH集群中提交R的Spark作业Spark自带了R语言的支持,在此就不做介绍,本文章主要讲述如何使用...Rstudio提供的sparklyr包,向CDH集群的Yarn提交R的Spark作业。...内容概述 1.命令行提交作业 2.CDSW中提交作业 3.总结 测试环境 1.操作系统:RedHat7.2 2.采用sudo权限的ec2-user用户操作 3.CDSW版本1.1.1 4.R版本3.4.2...前置条件 1.Spark部署为On Yarn模式 2.CDH集群正常 3.CDSW服务正常 2.命令行提交作业 ---- 1.在R的环境安装sparklyr依赖包 [ec2-user@ip-172-31...(sc) 3.运行代码测试 [hd9ta6sao9.jpeg] 4.查看Yarn作业 [7zdc0ev1n3.jpeg] 5.运行结果 [31ofrg0rme.jpeg] Yarn作业显示 [jgontylsqa.jpeg

    1.7K60

    Spark实战系列4:Spark周边项目Livy简介

    任务,需要Spark环境的,Standalone模式是Spark 自 身的 一种调度模式,也是需要Spark环境,YARN模式中,其实是将Spark JAR包提交YARN上 面,由YARN去开启Contioner...的 一个REST服务,Livy可以在任意平台上提交Spark作业 Livy可以在WEB/Mobile中提交(不需要Spark客户端)可编程的、容错的、多租户的Spark作业,因此,多个 用户可以并发的、...Apache Livy是 一个可以通过REST接 口轻松的与Spark集群进 行交互的服务,它可以很 方便提交Spark作业或者Spark代码 片段,同步或者异步的进 行结果检索以及Spark Context...(YARN / Mesos) 而不是Livy服务器,以实现良好的容错性和并发性 作业可以作为预编译的jar,代码 片段或通过java / scala客户端API提交 通过安全的认证通信确保安全 4.../bin/livy-server Livy默认情况下使 用SPARK_HOME的配置,建议将SparkYARN集群模式的 方式提交应 用程序,这样可以确保 用户会话在YARN集群模式中合适的分配资源,

    1.5K10

    Livy,基于Apache Spark的开源REST服务,加入Cloudera Labs

    API比较方便的与Spark集群交互。...通过简单的REST接口或RPC客户端库,它可以让你轻松的提交Spark作业或者Spark代码片段,同步或者异步的结果检索,以及SparkContext管理。...通过Livy,你可以: 1.由多个客户端为多个Spark作业使用长时间运行的SparkContexts。...3.预编译的jars,代码片段或者Java/Scala客户端API都可以用来提交作业。 4.安全认证的通信。 要使用Livy,集群中必须安装Spark 1.4或以上版本,Scala2.10。...强烈建议配置Spark on YARN,以确保用户会话可以连接到YARN集群中,并使用YARN分配的资源,也可以保证当有多个会话连接时,运行Livy服务的节点不会负载太高。

    2.4K80

    如何使用Oozie API接口向Kerberos环境的CDH集群提交Shell作业

    API向Kerberos和非Kerberos集群提交Spark和Java作业,本篇文章主要介绍如何使用Oozie Client API向Kerberos环境的CDH集群提交Shell Action工作流...6.总结 ---- 通过Oozie API提交作业,需要先定义好workflow.xml文件 参数传递通过在代码里面调用oozieClient.createConfiguration()创建一个Properties...向集群提交作业文章: 《如何使用Oozie API接口向非Kerberos环境的CDH集群提交Spark作业》 《如何使用Oozie API接口向非Kerberos环境的CDH集群提交Java作业》 《...如何使用Oozie API接口向非Kerberos环境的CDH集群提交Shell工作流》 《如何使用Oozie API接口向Kerberos环境的CDH集群提交Spark作业》 《如何使用Oozie API...接口向Kerberos环境的CDH集群提交Spark2作业》 《如何使用Oozie API接口向Kerberos集群提交Java程序》 GitHub地址: https://github.com/fayson

    1.7K60

    如何通过Livy的RESTful API接口向非Kerberos环境的CDH集群提交作业

    的开源REST服务,加入Cloudera Labs》和《如何编译Livy并在非Kerberos环境的CDH集群中安装》,Livy提供了两种类型的API(编程API和RESTful API接口),本篇文章主要介绍如何使用...java代码调用Livy提供的RESTful API接口向非Kerberos环境的CDH集群提交Spark作业操作。....jar\", \"proxyUser\":\"fayson\"}"; //向集群提交Spark作业 HttpUtils.postAccess(LIVY_HOST + "...(LIVY_HOST + "/batches/3", headers); } } 4.示例代码运行 ---- 1.运行AppLivy代码,向集群提交Spark作业 [7tzpkyu3m5.jpeg...3.查看Livy界面提交作业的状态 [3weekffrp8.jpeg] 4.通过CM和Yarn的8088界面查看作业执行结果 Yarn的应用程序界面显示 [935ble4eve.jpeg] [2qkszjiegr.jpeg

    2.5K70

    Flink运行方式及对比

    前言 本文Flink使用版本1.12.7 主从架构 组件 主 从 HDFS NameNode DataNode Yarn ResourceManager NodeManager Spark Master...,非频繁提交场景 使用大任务,非频繁提交场景 Per-Job和Session对比 flink的yarn模式部署项目集群上有三种: yarn-session yarn-per-job Application...如果资源满了,下一个作业就无法提交,只能等到yarn中的其中一个作业执行完成后,释放了资源,那下一个作业才会正常提交. 这种方式资源被限制在session中,不能超过。..._0049 获取Flink Rest接口地址 我们先从Yarn Rest Api中获取Flink Rest Api的地址 进入Yarn管理界面查看applicationid http://hadoop02...REST APIAPI 说明 参数 /jobs/:jobid/accumulators 查看具体某个作业所有任务的累加器 jobid /jobs/:jobid/checkpoints 查看具体某个作业

    2.4K51

    spark jobserver源码导读

    改源码量比较小,而且是关于Spark API的非常适合大家去阅读,以便于帮助大家更加深刻的理解spark API使用及运行原理相关的内容。...“Spark as Service”:针对job和contexts的各个方面提供了REST风格的api接口进行管理 2....可以通过结束 context 来停止运行的作业(job) 7. 分割 jar 上传步骤以提高 job 的启动速度 8. 异步和同步的 job API,其中同步 API 对低延时作业非常有效 9....这样可以提高对象在作业间的共享和重用 关于入口浪尖建议大家可以从Spark jobserver的bin目录下手,比如server_start.sh脚本,该脚本本身就是一个spark 任务提交脚本比较好的范例...就看你如何选择了 更多spark,flink等大数据技巧欢迎关注浪尖知识星球。

    92110

    如何使用Oozie API接口向非Kerberos环境的CDH集群提交Java作业

    Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢 1.文档编写目的 ---- 前面Fayson介绍了《如何使用Oozie...API接口向非Kerberos环境的CDH集群提交Spark作业》,本篇文章主要介绍如何使用Oozie Client API向非Kerberos环境的CDH集群提交Java作业。...Oozie-client的API接口向非Kerberos集群提交MapReduce作业 * creat_user: Fayson * email: htechinfo@163.com * creat_date...Java作业 [5kgk5bxszw.jpeg] 2.登录CM进入Yarn服务的“应用程序”菜单查看 [j38l4av0yi.jpeg] 3.打开Yarn的8088 Web界面查看 [c33z0jgipv.jpeg...6.总结 ---- 通过Oozie API提交作业,需要先定义好workflow.xml文件 参数传递通过在代码里面调用oozieClient.createConfiguration()创建一个Properties

    1.1K70

    如何通过Livy的RESTful API接口向Kerberos环境的CDH集群提交作业

    的开源REST服务,加入Cloudera Labs》、《如何编译Livy并在非Kerberos环境的CDH集群中安装》、《如何通过Livy的RESTful API接口向非Kerberos环境的CDH集群提交作业...本篇文章主要介绍如何使用java代码调用Livy提供的RESTful API接口向Kerberos环境的CDH集群提交Spark作业操作。.../4", headers); } } (可左右滑动) 4.示例代码运行 ---- 1.运行AppLivy代码,向集群提交Spark作业 [f2wjpdc5qm.jpeg] 响应结果: { "...3.通过CM和Yarn的8088界面查看作业执行结果 CM上Yarn的应用程序界面显示 [5o7whmy9tk.jpeg] Yarn的8088界面显示 [qm13ahj3lq.jpeg] Spark的...配置文件环境变量中,实现fayosn@FAYSON.COM用户登录 访问Kerberos环境下的RESTfulAPI接口需要使用HttpClient提供的spnego方式访问,这里Fayson使用第三方封装好的

    4K120

    分布式计算引擎 FlinkSpark on k8s 的实现对比以及实践

    Spark on k8s 使用 提交作业 向 k8s 集群提交作业和往 YARN 上面提交很类似,命令如下,主要区别包括: --master 参数指定 k8s 集群的 ApiServer 需要通过参数...spark 支持提交的时候使用本地的文件,然后使用 s3 等作为中转:先上传上去,然后作业运行的时候再从 s3 上面下载下来。下面是一个实例。 ......--serviceaccount=spark:spark --namespace=spark 下面做一个简单的演示: 通过如下命令提交作业 SparkPiSleep k8s 集群中。...但是前面也说过,Flink 作业作业运行终态之后会清理掉所有资源,Spark 作业运行完只会保留 Driver Pod 的日志,那么我们如何收集完整的作业日志呢?...Flink 作业结束之后就什么日志都查看不到了。 9. 总结 本文从使用方式、源码实现以及在生产系统上面如何补足周边系统地介绍了 Spark 和 Flink 在 k8s 生态上的实现、实践以及对比。

    2.1K52

    如何在Hue中添加Spark Notebook

    、Impala、HBase、Solr等,在Hue3.8版本后也提供了Notebook组件(支持R、Scala及python语言),但在CDH中Hue默认是没有启用Spark的Notebook,使用Notebook...在前面Fayson也介绍了《Livy,基于Apache Spark的开源REST服务,加入Cloudera Labs》、《如何编译Livy并在非Kerberos环境的CDH集群中安装》、《如何通过Livy...的RESTful API接口向非Kerberos环境的CDH集群提交作业》、《如何在Kerberos环境的CDH集群部署Livy》、《如何通过Livy的RESTful API接口向Kerberos环境的...CDH集群提交作业》、《如何打包Livy和Zeppelin的Parcel包》和《如何在CM中使用Parcel包部署Livy及验证》,本篇文章Fayson主要介绍如何在Hue中添加Notebook组件并集成...6.运行Spark Notebook成功可以看到Livy中已成功创建了Spark Session会话 ? Yarn界面 ?

    6.8K30

    Livy:基于Apache SparkREST服务

    它提供了以下这些基本功能: 提交Scala、Python或是R代码片段远端的Spark集群上执行; 提交Java、Scala、Python所编写的Spark作业远端的Spark集群上执行; 提交批处理应用在集群中运行...交互式会话(Interactive Session) 使用交互式会话与使用Spark所自带的spark-shell、pyspark或sparkR相类似,它们都是由用户提交代码片段REPL,由REPL来编译成...使用编程API 在交互式会话模式中,Livy不仅可以接收用户提交的代码,而且还可以接收序列化的Spark作业。...为此Livy提供了一套编程式的API供用户使用,用户可以像使用原生Spark API那样使用Livy提供的API编写Spark作业,Livy会将用户编写的Spark作业序列化并发送到远端Spark集群中执行...表1 使用Spark API所编写PI程序与使用Livy API所编写程序的比较 可以看到除了入口函数不同,其核心逻辑完全一致,因此用户可以很方便地将已有的Spark作业迁移到Livy上。

    3.9K80

    大数据常用组件默认端口号

    colspan{ background:#f4f4f4; font-weight: bold;} 一般来说,Hadoop集群是运行在内网中的,并不开放外网访问,然后通过一个gateway机器作为集群的客户端来提交作业...此时,内网应当是互通的;如果内网仍需要开启防火墙,那么就需要将Hadoop所用到的端口号加入防火墙的例外当中。...这篇文章列举了Hadoop生态系统下常用大数据组件的默认端口号,包括 HDFS、YARN、MapReduce、Hive、Spark、Zookeeper、Kakfa,其他的例如HBase、Sqoop等以后用到的时候再新增吧...8080 spark.master.ui.port Master WebUI 8081 spark.worker.ui.port Worker WebUI 18080 spark.history.ui.port...History server WebUI 7077 SPARK_MASTER_PORT Master port 6066 spark.master.rest.port Master REST

    2.3K60
    领券