Flink on yarn

本文介绍了Flink on yarn的执行方式和提交命令,包括先开辟资源再调度使用和边开辟边使用两种方式。还阐述了其内部流程,如上传jar包和配置到hdfs、向yarn申请资源、启动相关组件等,同时提到了on-yarn可提高集群利用率,能执行多种任务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

1.Flink on yarn执行方式和提交命令

第一种:是先开辟资源然后在进行资源的调度使用,开辟的资源是供所有的flink进程来使用的,如果某一时刻没有flink程序执行开辟的资源会空转等待新的flink进程。

 

第二种:是一边开辟资源一边进行使用,一个资源供一个flink进程使用,flink进程执行完毕之后就释放资源。

 

 

flink的提交命令:

 

默认查找当前yarn集群中已有的yarn-session信息中的jobmanager(Flink on yarn的第一种执行方式)

【/tmp/.yarn-properties-root】:./bin/flink run ./examples/batch/WordCount.jar -input hdfs://hostname:port/hello.txt -output hdfs://hostname:port/result1

 

 

连接指定host和port的jobmanager:(-m参数直接指定flink的集群位置)

./bin/flink run -m hadoop100:1234 ./examples/batch/WordCount.jar -input hdfs://hostname:port/hello.txt -output hdfs://hostname:port/result1

 

启动一个新的yarn-session(flink on yarn的第二种方式):

./bin/flink run -m yarn-cluster -yn 2 ./examples/batch/WordCount.jar -input hdfs://hostname:port/hello.txt -output hdfs://hostname:port/result1

 

注意:yarn session命令行的选项也可以使用./bin/flink 工具获得。它们都有一个y或者yarn的前缀

例如:./bin/flink run -m yarn-cluster -yn 2 ./examples/batch/WordCount.jar

 

 

 

 

Flink on Yarn

→ResourceManager

→NodeManager

→applicationMaster(flink的jobmanager和它运行在一个Container中)

→Container(taskmanager运行在上面)

 

注Ⅰ:一个container启动applicationMaster和jobmanager,其余的container启动taskmanager

 

 

2.Flink on yarn 的内部流程:

on-yarn 的优势:

  1. 提高集群机器的利用率
  2. 一套集群,可以执行MR任务,spark任务,flink任务等...

 

Flink on yarn的流程:

  第一步:上传flink 相关jar包和配置到hdfs

第二步:向yarn(resourceManager)申请资源并请求启动applicationMaster的容器

第三步:resourceManager分配applicationMaster的容器启动appMaster和flink jobManager,flink jobManager会修改hdfs的配置文件,供taskManager获悉jobManager的位置。

第四步:appMaster开始分配worker在其他的container上,每一个container启动一个Flink TaskManager任务,flink taskManager会读取hdfs的配置文件找到jobManager来运行flink程序。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值