1.概述

转载:https://blog.csdn.net/weixin_43970890/article/details/102483720

如果 Flink 应用不能正常启动达到 RUNNING 状态,可以按以下步骤进行排查:

  1. 需要先检查应用当前状态,根据上述对启动流程的说明,我们知道:

    • 处于 NEW_SAVING 状态时正在进行应用信息持久化,如果持续处于这个状态我们需要检查 RM 状态存储服务(通常是 ZooKeeper 集群)是否正常;
    • 如果处于 SUBMITTED 状态,可能是 RM 内部发生一些 hold 读写锁的耗时操作导致事件堆积,需要根据 YARN 集群日志进一步定位;
    • 如果处于 ACCEPTED 状态,需要先检查 AM 是否正常,跳转到步骤2;
    • 如果已经是 RUNNING 状态,但是资源没有全部拿到导致 JOB 无法正常运行,跳转到步骤 3;
  2. 检查 AM 是否正常,可以从 YARN 应用展示界面(http:///cluster/app/)或 YARN 应用 REST API(http:///ws/v1/cluster/apps/)查看 diagnostics 信息,根据关键字信息明确问题原因与解决方案:

  • Queue's AM resource limit exceeded. 原因是达到了队列 AM 可用资源上限,即队列的 AM 已使用资源和 AM 新申请资源之和超出了队列的 AM 资源上限,可以适当调整队列 AM 可用资源百分比的配置项:yarn.scheduler.capacity..maximum-am-resource-percent

  • User's AM resource limit exceeded. 原因是达到了应用所属用户在该队列的 AM 可用资源上限,即应用所属用户在该队列的 AM 已使用资源和 AM 新申请资源之和超出了应用所属用户在该队列的 AM 资源上限,可以适当提高用户可用 AM 资源比例来解决该问题,相关配置项:yarn.scheduler.capacity..user-limit-factoryarn.scheduler.capacity..minimum-user-limit-percent

  • AM container is launched, waiting for AM container to Register with RM. 大致原因是 AM 已启动,但内部初始化未完成,可能有 ZK 连接超时等问题,具体原因需排查 AM 日志,根据具体问题来解决。

  • Application is Activated, waiting for resources to be assigned for AM. 该信息表示应用 AM 检查已经通过,正在等待调度器分配,此时需要进行调度器层面的资源检查,跳转到步骤 4。

  1. 确认应用确实有 YARN 未能满足的资源请求:从应用列表页点击问题应用 ID 进入应用页面,再点击下方列表的应用实例 ID 进入应用实例页面,看 Total Outstanding Resource Requests 列表中是否有 Pending 资源,如果没有,说明 YARN 已分配完毕,退出该检查流程,转去检查 AM;如果有,说明调度器未能完成分配,跳转到步骤4;

  2. 调度器分配问题排查,YARN-9050 支持在 WebUI 上或通过 REST API 自动诊断应用问题,将在 Hadoop3.3.0 发布,之前的版本仍需进行人工排查:

  • 检查集群或 queue 资源,scheduler 页面树状图叶子队列展开查看资源信息:Effective Max Resource、Used Resources:
    (1)检查集群资源或所在队列资源或其父队列资源是否已用完
    (2)检查叶子队列某维度资源是否接近或达到上限;
  • 检查是否存在资源碎片:
    (1)检查集群 Used 资源和 Reserved 资源之和占总资源的比例,当集群资源接近用满时(例如 90% 以上),可能存在资源碎片的情况,应用的分配速度就会受影响变慢,因为大部分机器都没有资源了,机器可用资源不足会被 reserve,reserved 资源达到一定规模后可能导致大部分机器资源被锁定,后续分配可能就会变慢
    (2)检查 NM 可用资源分布情况,即使集群资源使用率不高,也有可能是因为各维度资源分布不同造成,例如 1/2 节点上的内存资源接近用满 CPU 资源剩余较多,1/2 节点上的 CPU 资源接近用满内存资源剩余较多,申请资源中某一维度资源值配置过大也可能造成无法申请到资源;
  • 检查是否有高优先级的问题应用频繁申请并立即释放资源的问题,这种情况会造成调度器忙于满足这一个应用的资源请求而无暇顾及其他应用;
  • 检查是否存在 Container 启动失败或刚启动就自动退出的情况,可以查看 Container 日志(包括 localize 日志、launch 日志等)、YARN NM 日志或 YARN RM 日志进行排查。

【Flink】 Flink 应用资源分配问题排查思路相关推荐

  1. 【flink】Flink常见Checkpoint超时问题排查思路

    1.概述 转载:Flink常见Checkpoint超时问题排查思路 这里仅仅是自己学习. 在日常flink应用中,相信大家经常会遇到checkpoint超时失败这类的问题,遇到这种情况的时候仅仅只会在 ...

  2. 有赞 Flink 实时任务资源优化探索与实践

    简介:目前有赞实时计算平台对于 Flink 任务资源优化探索已经走出第一步. 作者|沈磊 随着 Flink K8s 化以及实时集群迁移完成,有赞越来越多的 Flink 实时任务运行在 K8s 集群上, ...

  3. 资源丨MySQL故障排查思路方法PPT视频24问答

    昨晚,墨天轮邀请到MySQL技术顾问崔虎龙做了题为<一小时掌握MySQL故障排查思路方法>的直播分享,引起了大家的广泛关注,直播后很多小伙伴来找小编询问PPT.思维导图.视频等,在这里小编 ...

  4. K8S集群中Pod资源处于CrashLoopBackOff状态排查思路

    K8S集群中Pod资源处于CrashLoopBackOff状态排查思路 文章目录 K8S集群中Pod资源处于CrashLoopBackOff状态排查思路 1.Pod资源处于CrashLoopBackO ...

  5. K8S集群中Pod资源常见的异常状态以及排查思路

    K8S集群中Pod资源常见的异常状态以及排查思路 1.Pod资源的结构 Pod资源中会有一个基础容器Pause容器,每一个Pod资源下都会有一个Pause容器,Pause容器负责创建一个虚拟网络和存储 ...

  6. K8S集群中Pod资源数据丢包排查思路

    K8S集群中Pod资源数据丢包排查思路 Pod资源可能会由于网络原因产生丢包的现象. 当Pod资源存在丢包的现象时,会出现下面的报错: Connect to 100.111.156.74 port 5 ...

  7. K8S集群中Pod资源处于Terminating或Unknown状态排查思路

    K8S集群中Pod资源处于Terminating或Unknown状态排查思路 文章目录 K8S集群中Pod资源处于Terminating或Unknown状态排查思路 1.Pod资源处于Terminat ...

  8. K8S集群中Node节点资源不足导致Pod无法运行的故障排查思路

    K8S集群中Node节点资源不足导致Pod无法运行的故障排查思路 文章目录 K8S集群中Node节点资源不足导致Pod无法运行的故障排查思路 1.Node节点资源不足可能会产生的故障 2.Node节点 ...

  9. K8S集群中Pod资源处于Pending状态排查思路

    K8S集群中Pod资源处于Pending状态排查思路 文章目录 K8S集群中Pod资源处于Pending状态排查思路 1.Pod资源处于Pending状态的原因 2.Pod资源处于Pending状态的 ...

最新文章

  1. 从一个路口转向另一个路口需要多少步
  2. [家里蹲大学数学杂志]第418期南开大学2013年实变函数期末考试试题参考解答
  3. 黄金连分数(java大法好)
  4. 树莓派该文件名_树莓派:文本编辑器与文件
  5. ios 如何获得系统时间和日期
  6. 22考研计算机专业课——数据结构【❤️考研复习指导❤️】
  7. java和python互相调用
  8. XILINX FPGA数字信号处理——2、数字信号处理实现方法
  9. 机器人编程按时巡线_活动回顾 丨巡线机器人编程活动带小朋友体验游戏设计的乐趣...
  10. CATIA V6 二次开发—概述
  11. html渐变编织背景,CSS hover背景/文字渐变效果
  12. php中文网怎么修改头像,thinkphp 头像上传在线剪切编辑问题 (使用美图秀秀头像编辑器组件)...
  13. INCA车载ECU工具软件简介
  14. php 模态框效果,评论:超酷的模态框效果 - Nifty
  15. P1548 棋盘问题
  16. 【转】用天文方法计算二十四节气(下)
  17. 攻防世界-- web高手进阶区-- writeup汇总
  18. 用树莓派都可以DIY“波士顿机器狗”!
  19. Angular入门到精通系列教程(6)- Angular的升级
  20. JS判断手机是否是iOS或者Android

热门文章

  1. 又酸了!腾讯员工福利再升级:入职满15年可“提前退休”
  2. 谷歌Pixel 6系列手机发布会官宣定档 10月19日发布
  3. iPhone 13及12推动,机构预计苹果今年将销售近2亿部5G iPhone
  4. iPhone13最新外观售价曝光:好看还便宜
  5. 工信部:老年人拨打三大运营商客服享受一键呼入等服务
  6. 溢价28倍!罗永浩的直播公司要卖了:“真还传”提前上演!
  7. Facebook入局视频会议,日活用户超3亿的Zoom股价应声下跌,Zoom为何不扛打?
  8. 飞书推出“线上办公室” 通过实时语音频道还原办公场景
  9. 新iPhone终于要去掉刘海了,但这个操作好骚啊!
  10. 瑞幸:现在卖24元一杯已经很便宜了 以后还要降价