Flink on Yarn 模式 提交作业以及TaskManager内存配置

Flink on Yarn 模式 TaskManager内存配置

介绍一下Flink on yarn模式的内存分配情况

内存分布图

在这里插入图片描述

内存介绍

内存分为
整个container内存、flink内存。其中内存类型又分为堆内存和堆外内存。

    1. JVM Metaspace :默认256M;
    1. JVM Overhead内存:默认整个container内存的0.1;
      最大值为1G,最小值为192M,如果计算出来的内存大小不在此区间范围内,按照最小值/最大值 分配;例如计算的结果为128M,实际按照192M分配;计算结果为1.2G,实际按照1G分配;
    1. Flink Memory = Totoal Memory - JVM Metaspace - JVM Overhead
    1. Total Memory :flink job 启动时,按照参数: -ytm 6144 指定的内存大小(单位M)。如果不指定,按照yarn最小Container分配的内存大小。
  <property>
    <name>yarn.scheduler.minimum-allocation-mb</name>
    <value>2048</value>
  </property>
    1. Network = Flink Memory *0.1(默认值)
    1. Managed Memory = Flink Memory * 0.4(默认值)
    1. Task off-heap 默认为0;
    1. framework off-heap :默认为128M

计算方式

在这里插入图片描述

# 简单执行提交作业
./bin/flink run-application -tyarn-application./MyApplication.jar

# 传入参数提交作业
./bin/flink run-application -t yarn-application \
    -Djobmanager.memory.process.size=2048m \
    -Dtaskmanager.memory.process.size=8192m \
    ./MyApplication.jar

# 为进一步节省将Flink jar发送到集群的带宽,可以将Flink jar预上传到YARN能访问的远程存储(如:hdfs),通过使用yarn.provided.lib.dirs配置项实现,如下所示:

./bin/flink run-application -t yarn-application \
    -Djobmanager.memory.process.size=2048m \
    -Dtaskmanager.memory.process.size=8192m \
    -Dyarn.provided.lib.dirs="hdfs://user/remote-flink-dist-dir" \
    ./MyApplication.jar

# 为进一步节省提交应用程序jar所需的带宽,同样可以将其预上传到HDFS,提交应用程序时指向远程路径/MyApplication.jar即可,如下所示

./bin/flink run-application -t yarn-application \
 
    -Djobmanager.memory.process.size=2048m \
    -Dtaskmanager.memory.process.size=8192m \
    -Dyarn.provided.lib.dirs="hdfs://user/remote-flink-dist-dir" \
    hdfs://user/jars/MyApplication.jar

提交内存设置为 8192 8G
Flink Managed Memory = (8192M * 0.9 -256M) 0.4 = 2.78G
JVM(heap/Non-heap) = (8192M * 0.9 -256M)
0.5 -128 M = 3.3G

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值