Yarn的作业提交

1:什么是yarn

YARN是一个框架管理器,用户可以将各种各样的计算框架移植到YARN之上,由YARN进行统一管理和资源分配、本质上是一个资源统一管理系统,将各种框架运行在YARN之上,可以实现框架的资源统一管理和分配,使他们共享一个集群,而不是“一个框架一个集群”,这可大大降低运维成本和硬件成本

比如的MapReduce、Spark、impala等主流技术

2:Spark on Yarn

yarn-client  和  yarn-cluster

yarn-client:

Spark Dirver 先在客户机上运行,然后通过Yarn申请使用exeutor以运行Spark Task

yarn-cluster:

Spark Driver作为一个ApplicationMaster在Yarn集群中先启动,然后再由ApplicationMaster向RM申请使用executor以运行Spark Task

3:环境配置情况

4:运行代码编写

在集群通信不是很好的时候,现在一个节点部署(客户机)、采用yarn-client模式

./bin/spark-submit     -----提交脚本

--master yarn-client   -----提交模式//( yarn-cluster

--class ***.main()  ----运行的Dirver

--executor-memory 3g   ----参数设置

--driver-memory 1g

****.jar  -----打包的jar包

hdfs://hadoop1:8000/user/*** -----hdfs参数

时间: 2024-10-10 15:03:32

Yarn的作业提交的相关文章

yarn作业提交过程源码

记录源码细节,内部有中文注释 Client 端: //最终通过ApplicationClientProtocol协议提交到RM端的ClientRMService内 package org.apache.hadoop.mapred; jobclient包内 YarnRunner public JobStatus submitJob(JobID jobId, String jobSubmitDir, Credentials ts) throws IOException, InterruptedExc

指定作业提交的优先级和队列

hadoop jar /home/ochadoop/app/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.3.0-cdh5.0.2.jar pi -Dmapreduce.job.queuename=ochadoop 50 100 作业提交到的队列:mapreduce.job.queuename 作业优先级:mapreduce.job.priority Pig版本: SET mapreduce.job.queuename roo

storm on yarn安装时 提交到yarn失败 failed

最近在部署storm on yarn ,部署参考文章 http://www.tuicool.com/articles/BFr2Yvhttp://blog.csdn.net/jiushuai/article/details/18729367 在安装完zookeeper,配置好storm 和storm on yarn后,启动zookeeper,其中zookeeper的port为2181,然后通过mvn package 编译工程,发现会出现错误,然后使用mvn packet -DskipTests 重

Spark on Yarn:任务提交参数配置

当在YARN上运行Spark作业,每个Spark executor作为一个YARN容器运行.Spark可以使得多个Tasks在同一个容器里面运行. 以下参数配置为例子: spark-submit --master yarn-cluster   #使用集群调度模式(一般使用这个参数) --num-executors  132      # executor 数量 --executor-cores  2        #设置单个executor能并发执行task数,根据job设置,推荐值2-16 (

Storm笔记整理(三):Storm集群安装部署与Topology作业提交

[TOC] Storm分布式集群安装部署 概述 Storm集群表面类似Hadoop集群.但在Hadoop上你运行的是"MapReduce jobs",在Storm上你运行的是"topologies"."Jobs"和"topologies"是大不同的,一个关键不同是一个MapReduce的Job最终会结束,而一个topology永远处理消息(或直到你kill它). Storm集群有两种节点:控制(master)节点和工作者(wo

hadoop运行原理之作业提交(一)

这部分的计划是这样的,首先解释JobTracker的启动过程和作业从JobClient提交到JobTracker上:然后:最后将整个流程debug一遍来加深映象. 在看JobTracker源代码的时候就会发现,它里边有main()方法,这就说明了它是一个独立的java进程.在hadoop根目录下的bin文件夹中的hadoop脚本中可以看到,它指定了JobTracker类.如下图所示: JobTracker的main()方法中最主要的是以下两条语句: 1 public static void ma

Apache Spark-1.0.0源码浅析(三 ):作业提交

RDD的操作可以分为Transformations和Actions,Transformations是lazy的不立即执行,Action则会触发作业的提交和执行.例如本例中的foreach def foreach(f: T => Unit) { sc.runJob(this, (iter: Iterator[T]) => iter.foreach(f)) } 一句话,Actions调用sc.runJob触发作业运行. SparkContext中的runJob有多个版本的重载 foreach调用的

第一次迭代作业提交

程序java代码: 1 import java.util.Arrays; 2 import java.util.Scanner; 3 4 public class volleyball { 5 6 public static void main(String[] args) { 7 8 int[][] scoreArr = new int[5][2];// 定义二维数组,用于记录每局比赛分数 9 int red = 0; 10 int blue = 0;// 定义红蓝变量,用于判断红蓝整场比赛输

Apache Flink流作业提交流程分析

提交流程调用的关键方法链 用户编写的程序逻辑需要提交给Flink才能得到执行.本文来探讨一下客户程序如何提交给Flink.鉴于用户将自己利用Flink的API编写的逻辑打成相应的应用程序包(比如Jar)然后提交到一个目标Flink集群上去运行是比较主流的使用场景,因此我们的分析也基于这一场景进行. Flink的API针对不同的执行环境有不同的Environment对象,这里我们主要基于常用的RemoteStreamEnvironment和RemoteEnvironment进行分析 在前面我们谈到