Flink-On-Yarn

本文详细介绍了为何使用Flink on Yarn,包括资源利用率提升、任务优先级管理和容错机制。讲解了Flink on Yarn的任务提交流程,包括Session模式和Per-Job模式,并提供了环境配置步骤及测试方法。Session模式适用于大量小任务,而Per-Job模式为每个任务启动独立集群。
摘要由CSDN通过智能技术生成

为什么使用Flink On Yarn

  1. Yarn的资源可以按需使用,提高集群的资源利用率
  2. Yarn的任务有优先级,根据优先级运行作业
  3. 基于Yarn的调度系统,能自动化处理每个角色的Failover(容错)
  • JobManager进程和TaskManager进程都由Yarn NodeManager监控
  • 如果JobManager进程异常退出,则Yarn ResourceManager会重新调度JobManager到其他机器
  • 如果TaskManager进程异常退出, JobManager会收到消息并重新向Yarn ResourceManager申请资源,重新启动TaskManager

Flink On Yarn提交任务执行流程

在这里插入图片描述

Flink On Yarn的两种模式

Session模式

在Yarn集群中启动了一个Flink集群,并重复使用该集群
在这里插入图片描述

Per-Job(Job分离模式)

针对每个Flink任务都去启动一个独立的Flink集群,用完就关,不能重复使用
在这里插入图片描述

Flink On Yarn环境设置

准备环境

  1. 关闭yarn的内存检查
    vim /export/server/hadoop/etc/hadoop/yarn-site.xml
<!-- 关闭yarn内存检查 -->
    <property>
        <name>yarn.nodemanager.pmem-check-enabled</name>
        <value>false</value>
    </property>
    <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
    </property>
  1. 分发
scp -r /export/server/hadoop/etc/hadoop/yarn-site.xml node2:/export/server/hadoop/etc/hadoop/yarn-site.xml
scp -r /export/server/hadoop/etc/hadoop/yarn-site.xml node3:/export/server/hadoop/etc/hadoop/yarn-site.xml
  1. 重启yarn
/export/server/hadoop/sbin/stop-yarn.sh

/export/server/hadoop/sbin/start-yarn.sh

测试

Session会话模式
在Yarn上启动一个Flink集群,并重复使用该集群,后续提交的任务都是给该集群,资源会被一直占用,除非手动关闭该集群----适用于大量的小任务

  1. 在yarn上启动一个Flink集群/会话,node1上执行以下命令
/export/server/flink/bin/yarn-session.sh \
-n 2 \
-tm 800 \
-s 1 \
-d

说明:
申请2个CPU、1600M内存

-n 表示申请2个容器,这里指的就是多少个taskmanager

-tm 表示每个TaskManager的内存大小

-s 表示每个TaskManager的slots数量

-d 表示以后台程序方式运行

  1. 提交代码
/export/server/flink/bin/flink run /export/server/flink/examples/batch/WordCount.jar \
--input hdfs://node1.itcast.cn:8020/wordcount/input
  1. 查看Yarn_UI
    在这里插入图片描述
  2. 查看FlinkUI
    在这里插入图片描述
    在这里插入图片描述

Job分离模式

  1. 直接提交Job
/export/server/flink/bin/flink run \ 
-m yarn-cluster \
-yjm 1024 \
-ytm 1024 \
/export/server/flink/examples/batch/WordCount.jar

说明:
-m jobmanager的地址
-yjm 1024 指定jobmanager的内存信息
-ytm 1024 指定taskmanager的内存信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大数据老人家i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值