• Flink1.6系列之—Flink on yarn流程详解


    本篇我们介绍下,Flink在YARN上运行流程:

     

     

    1. 当开始一个新的Flink yarn 会话时,客户端首先检查所请求的资源(containers和内存)是否可用。如果资源够用,之后,上传一个jar包,包含Flink和HDFS的配置。
    2. 客户端向yarn resource manager发送请求,申请一个yarn container去启动ApplicationMaster。
    3. yarn resource manager会在nodemanager上分配一个container,去启动ApplicationMaster
    4. yarn nodemanager会将配置文件和jar包下载到对应的container中,进行container容器的初始化。
    5. 初始化完成后,ApplicationMaster构建完成。ApplicationMaster会为TaskManagers生成新的Flink配置文件(使得TaskManagers根据配置文件去连接到JobManager),配置文件会上传到HDFS。
    6. ApplicationMaster开始为该Flink应用的TaskManagers分配containers,这个过程会从HDFS上下载jar和配置文件(此处的配置文件是AM修改过的,包含了JobManager的一些信息,比如说JobManager的地址)
    7. 一旦上面的步骤完成,Flink已经建立并准备好接受jobs。

    注意事项:

    • 客户端:这里的客户端就是用户提交Flink应用的节点。
    • ApplicationMaster和JobManager运行同一个container中;因此ApplicationMaster,生成新的配置文件时,就知道JobManager的信息,比如说JobManager的地址。
    • AM:也就是ApplicationMaster。ApplicationMaster container还为Flink的web界面提供服务。
    • YARN中代码使用的端口都是临时的,这就使得用户可以并行执行多个FLink会话。
  • 相关阅读:
    【bzoj1176】[Balkan2007]Mokia
    【bzoj1503】[NOI2004]郁闷的出纳员
    C#设置和获取系统环境变量
    结伙创业指南及翻脸法则
    Unity3D_(游戏)卡牌03_选关界面
    Unity3D_(游戏)卡牌02_主菜单界面
    Unity3D_(游戏)卡牌01_启动屏界面
    Unity3D_(游戏)跳一跳超简单制作过程
    如何将项目托管到Github上
    Android_(游戏)打飞机06:后续
  • 原文地址:https://www.cnblogs.com/dreamfor123/p/9545539.html
Copyright © 2020-2023  润新知