开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

flink中yarn 3.1.1版本使用UseParallelGC,flink 1.17.0版本使?

flink中yarn 3.1.1版本使用UseParallelGC,flink 1.17.0版本使用UseParallelGC,发现yarn的容器资源回收特别慢感觉有可能是flink taskmanager资源释放慢的原因,yarn单container最大20个G,vcore设置为5,flink jobmanager和taskmanager的jvm设置为2G,process.size设置为20G,一个taskmangaer solt 为5,并发量比较大的时候flink web特别卡,甚至打不开,提交作业也比较慢,甚至十几分钟才能起来,有大佬知道有什么优化手段吗 ?

展开
收起
真的很搞笑 2023-06-11 22:15:27 112 0
1 条回答
写回答
取消 提交回答
  • Flink 中 YARN 3.1.1 版本使用 UseParallelGC,Flink 1.17.0 版本使用 UseParallelGC,发现 YARN 的容器资源回收特别慢,可能是由以下原因导致的:

    • UseParallelGC 是一种并行垃圾回收器,它会在多个 CPU 核心上同时执行垃圾回收,以提高吞吐量和减少停顿时间。但是,UseParallelGC 也有一些缺点,比如它会占用更多的内存空间,以及它会在 Full GC 时触发 Stop-The-World 暂停所有的应用线程。
    • YARN 的容器资源回收是由 NodeManager 负责的,它会定期检查每个容器的内存和 CPU 使用情况,并根据配置的阈值和策略决定是否回收容器。但是,YARN 的容器资源回收也有一些限制和问题,比如它只能检测到物理内存的使用情况,而不能检测到虚拟内存的使用情况。
    • Flink 的 TaskManager 资源释放是由 ResourceManager 负责的,它会根据 Flink 应用的状态和需求,动态地调整 TaskManager 的数量和规模 。但是,Flink 的 TaskManager 资源释放也有一些延迟和开销,比如它需要等待 TaskManager 上的任务完成或取消,以及它需要与 YARN 协商释放资源 。

    综合以上原因,你可能会遇到以下几种情况:

    • 当你的 Flink 应用并发量比较大时,可能会导致 TaskManager 上的内存和 CPU 压力增大,从而触发 UseParallelGC 的频繁垃圾回收或者 Full GC。这样会导致 TaskManager 的性能下降,以及 Flink Web 特别卡或者打不开。
    • 当你的 Flink 应用结束或者缩容时,可能会导致 ResourceManager 请求释放部分或全部 TaskManager 的资源 。这样会导致 NodeManager 检测到容器的内存使用情况低于阈值,并尝试回收容器。
    • 但是,由于 UseParallelGC 占用了较多的虚拟内存空间,并且 NodeManager 无法检测到虚拟内存的使用情况。因此,NodeManager 可能会误认为容器仍然在运行,并不立即回收容器。
    • 这样就会导致 YARN 的容器资源回收特别慢,并且影响后续 Flink 应用的启动或者扩容。

    为了解决这些问题,你可以尝试以下方法:

    • 调整你的 Flink 应用的并发度和资源配置,使之适应你的数据量和处理逻辑 。你可以使用 Flink Web UI 或者 REST API 来监控你的 Flink 应用的运行状况和性能指标 。
    • 调整你的 Flink 应用的垃圾回收器参数,使之适应你的内存需求和压力。你可以使用 -XX:+UseG1GC 或者 -XX:+UseShenandoahGC 来替换 -XX:+UseParallelGC,以减少内存占用和停顿时间。
    • 调整你的 YARN 的容器资源回收参数,使之适应你的 Flink 应用的资源释放。你可以设置 yarn.nodemanager.vmem-check-enabled 为 false,以关闭虚拟内存的检测,或者设置 yarn.nodemanager.pmem-check-enabled 为 false,以关闭物理内存的检测。
    2023-10-16 11:09:22
    赞同 1 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    深度学习+大数据 TensorFlow on Yarn 立即下载
    Docker on Yarn 微服务实践 立即下载
    深度学习+大数据-TensorFlow on Yarn 立即下载