大数据培训:Flink的提交模式

前言

这篇文章应先以了解flink组件为开始,再以简单模式Local 和 Standlone 正式进入正题。本篇主要是以Yarn 方式下三种模式展开细讲,当然还有Kubernetes方式(本篇不细说)。监控安装流程

组件

在了解提交模式之前,先了接口是什么解一下接口类型Flink组件与组件之间的协作关系。

大数据培训:Flink的提交模式
大数据培训:Flink的提交模式

资源管理器(Resourcejvm调优面试题 Manager)

(1)主要负责管理任务管理器TaskManager的插槽slo接口测试t。

监控安装流程2) 当作业管理器JM申请插槽资源时, RM会将有空闲插槽的TM分配给JM。如果 RM没有足够的插槽来满足JM的请求。

(3jvm是什么意思)它还可以向资源提供平台发起会话,以提供启动 TM进程的大数据查询容器。

作业管理器(Jobjvm是什么意思Manager)

(1)监控怎么查看回放 控制一个应用程序执行的主进程,也就是说,每个应用程序 都会被一个不同的JM所控制执行。

(2) JM会先接收到要执行的应用程序,这个应用程序会包括:作业图(Job Grap监控器什么牌子最好清晰度高h大数据专业学什么)、逻辑数据流图( ogical dataflow graph)和打包了所有的类、库和其它资源的JAR包。

(3) JM会把 Jobgraph转换成一个物理层面的 数据流监控眼图,这个图被叫做 “执行图”(Executiongraph),包含大数据技术与应用了所有可以并发执行的任务机器学习。Job Manager会向资源管理器( Resourcem接口crc错误计数anager)请求执行任务必要的资源,大数据培训也就是 任务管理器(Taskmanager)上的插槽slot。一旦它获取到了足够的资源,就会将执行图分发到真正运行它监控怎么查看回放们的TM上接口文档。而在运行过程中JM会负责所有需要中央协调的操作,比如说检查点(checkpoints)的协调。

任务管理器(Taskmanager)

(1) Flink中的工作进程。通常在 Flink中会有多个TM运行, 每个TM都包含了一定数量的大数据行程码插槽slots。插槽的数量限制了TM能够执行的任监控app务数量。

(2) 启动之后,TM会向资源管理器注册它的插槽;收到资源管理器的指令接口类型后, TM就会将一个或者多个插槽提供给JM调用。TM就可以向插槽分配任务tasks来执行了。

(3接口测试) 在执行过程中, 一个TM可以跟其它运行同一应用程序的TM交换数据。

分发器(Dispatcher)

(1)可以跨作业运行,它为应用提交提供了REST接口

(2)当一个应用被提交执行时,分发器就会启动并将应用移交给JM。

(3)Di大数据技术与应用spatcher他会启动一个 WebUi,用来方便地 展示和监控监控器什么牌子最好清晰度高作业执行的信息。

Local模式大数据行程码

JobManager 和 TaskManager 共用一个 JVM,只需要jdk支持,单节点运行,主要用来调试。

Standlone模式

大数据培训:Flink的提交模式
大数据培训:Flink的提交模式

Standlone 是Flink自带的一个分布式集群,它不依赖其他的资源调度框架、不依赖yarn 等。

监控眼当Master角色的是JobManager。

充当Slave/Worke监控r角色是TaskManager

配置与jvm内存模型启动

(1)conf 目录下有两个文件:masters 和 workers 指定地址。jvm垃圾回收机制

(2)需要配置 conf/flink-conf.监控安装流程ya监控摄像头软件app下载ml 的自行配置。

(3)分发各个机器。

(4)启动集群 bin/start-cluster.sh

(5)提交任务 flink run

Yarn 模式

首先认识下提交流程

大数据培训:Flink的提交模式
大数据培训:Flink的提交模式

(1)提交App之前,先上传Flink的Jar包和配置到HDFS,以便JobManag监控安装流程e大数据查询r和TaskManager共享HDFS的数据。

(2)客户端向ResourceManager提交Job,ResouceManager接到请求后监控app,先分接口配container资源监控怎么查看回放,然后通知NodeManag机器学习er启动ApplicationMaster。jvm内存结构

(3)ApplicationMaster会加载HDFS的配置,启动对应的JobMan大数据与会计ager,然后JobManager会分析当前的作业图,将它转化成执行图(包含了所有可以并发执行的任务),从而知道当前需要的具体资源。

(4)接着,jvm性能调优JobManager会向ResourceManager申请资源,ResouceManager接到请求后,继续分配container资源,然后通知ApplictaionMaster启动更多的TaskManage监控摄像头r(先分配好container资源,再启动TaskMjvm调优面试题anager)。container在启动Taskjvm原理Manager时也会从HDFS加载数据。

(5)TaskManager启动后,接口自动化会向JobManager发送心跳包。JobManager向TaskManager分配任务。

Session Mode

大数据培训:Flink的提交模式
大数据培训:Flink的提交模式

Session模jvm面试题式提前初始化好一个集群,然后向这个集群提交大数据是什么意思应用。所有应用都在同一个集群中执行,共享资源。这jvm原理里JobMa接口和抽象类的区别nager仅有一个。提交到这个集群的作业可以直接运行。如图所示

Session模式共享Dispatcher 和 ResourceM大数据修仙anager,作业共享集群资源。

Session多个作业之间又不是隔离的,如果有一大数据杀熟个TaskManager挂掉,它上面承载着的所有作业也会失败。同样来说,启动的Job任务越多,J大数据技术obManager的接口crc错误计数负载也就越大。

所以,Session模式适合生命周期短资源消耗低的场景。

提交

./bin/flink run -t监控视频能保存多久 yarn-session \

-Dyarn.application.id=application_XXXX_YY \

./examjvm是什么意思ples/streaming/TopSpeedWindowing.jar

Per-Job Cluste监控器什么牌子最好清晰度高r Mode

大数据培训:Flink的提交模式
大数据培训:Flink的提交模式

在Per-Job模式下,每个提交到YARN上的作业会有单独的Flijvm面试题nk集群,拥有专属的JobMa大数据查询nager和TaskManager。也即:一个作业一个集群,作业之间相互监控隔离。

以Per-Job模式提交作业的启动延迟可能会较高,因为不需要共享集群,所以在PipelineExecutor中执行作业提交的时候,创建集群并将JobGraph以及所需要的接口测试文件等一同提交给Yarn集群,进行一系列的初始化动作,这个时候需要些时间。提交任务的时候会把本地flink的所有jvm调优jar包先上传到hdfs上相应的临时目接口文档录,这个也会带来大量的网络的开销。

优点就是作业之间的资源完全隔离,一个作业jvm性能调优的T大数据技术与应用专业as大数据行程码kManager失败不会影响其他作业的运行,JobManager的负载也是分散开来的,接口不存在单点问题。当作业运行完成,与它关联的集群也就被销毁,资源被释放。

所以,Per-Job模式一般用来部署那些长时大数据查询间运行的作业。

提交

./bin/flink run -t yarn-per-job –detached ./examples/streaming/TopSpeedWindowing.接口文档jar

「其他操作」

#List running job on the cluster

./bin/flink list -t ya接口类型rn-per-job -Dyarn.application.id=appli监控cation_X监控家用远程手机XXX_YY

#Cancel running job

./bin/flink can接口类型cel -t yarn-per-job –大数据行程码Dyarn.applicatiojvm性能调优n.id=application_XXXX_YY

Application Mode

大数据培训:Flink的提交模式
大数据培训:Flink的提交模式

Applicatio大数据行程码n 模监控器什么牌子最好清晰度高式尝监控器什么牌子最好清晰度高试去将per-job 模式的资源隔离性和轻量级,可扩展的应用提交进程相结合。为了实现这个目的,它会每个Job 创建一个集群,但jvm垃圾回收机制是 应用的main()将被在JobManager 执行。

Appl大数据是什么意思ication 模式大数据技术为每个提交的应用程序创建一个集群,该集群可以看作是在特定应用程序的作业之间共享的会话集群,并在应用程序完成时终止。在这种体系结构中Applicatio接口文档n模式在不同应用之间提供了资源隔离和负载平衡保监控app

在JobManager 中执行main()方法,可以节省所需的CPU周期接口测试。还有个好处就是,由于每个应用程序有一个JobManager,因此可以更平均地大数据分散网络负载。

提交

./bin/flink run-application -t yarn-application ./examples/strea机器学习ming/TopSpeedWindowing.jar

「其他操作」

#List running job on the cluster

./bin/flink list -t yarn-application接口的作用 -Dyarn.application.id=application_XXXX_YY

#Cancel running job

./bin/flink cancel -t yarn-application -Dyarn.application.id=application_XXXX_YY

Application mode中的多个job,实际在代码接口文档上的表现就是能够允许在一个Application里面调用多次execute/executjvm内存模型eAsyc方法。但是execute方法会被阻塞,也就是只有一个job完成之后才能继续下一个job的execute,但是jvm内存结构可以通过execu接口crc错误计数teAsync进行异步非阻塞执行。

Yarn 模式总结接口crc错误计数

大数据培训:Flink的提交模式
大数据培训:Flink的提交模式

大数据培训:Flink的提交模式
大数据培训:Flink的提交模式

文章来源于大数jvm调优面试题据与机器学习文摘

评论

发表回复