美文网首页flink学习
Flink部署模式的调研(看完你就知道你公司适合哪种)

Flink部署模式的调研(看完你就知道你公司适合哪种)

作者: FishMAN__ | 来源:发表于2020-12-02 23:14 被阅读0次

    一、调研的三种模式:

    1、Flink On Yarn

    (1)PerJob模式

    一个任务一个集群

    (2)Session模式

    多个任务一个Session,可以启多个Session

    2、Standlone模式

    多个任务一个集群,可以启动多个集群,还可以在每个节点另起多个taskmanager

    二、不同模式的对比

    perjob_yarn session_yarn standlone_cluster 占优
    集群 一个任务一个集群 多个任务一个集群,可以有多个集群 一个集群 perjob_yarn > session_yarn > standlone_cluster****session_yarn相比于perjob更加美观,相比于standlone启多个集群更优雅
    分配tm/jm内存,slot 随意配置 启动session时被限定 启动集群时被限定 perjob_yarn > session_yarn = standlone_cluster
    启动任务 单独启动 提交任务到指定session 提交任务到集群 持平
    任务恢复 单独启动 单个任务出问题单独启动;session挂掉全部任务重启 单个任务出问题单独启动;集群挂掉需要全部任务重启 perjob_yarn > session_yarn = standlone_cluster
    恢复时长 单独恢复、速度快 1、单个任务失败单独恢复;2、session挂掉或因一个任务影响到session挂掉则恢复时长依赖脚本,一旦脚本异常,手动单个恢复耗时长;3、目前稳定性不高,目前我们配置了高可用,好像不适合于session 1、单个任务失败单独恢复;2、集群挂掉任务全部启动3、高可用 perjob_yarn > session_yarn = standlone_cluster
    恢复粒度 一 / 多 一 / 多 perjob_yarn > session_yarn = standlone_cluster
    日志 单独日志 所有在session启动的任务都在一个jobmanager的日志中查看。yarn会帮你收集jobmanager和taskmanager的日志 所有在集群中启动的任务都在master节点中的flink-root-standalonesession-.log日志中查看。想看task的日志需要到对应的woker节点去看,不方便 perjob_yarn > session_yarn > standlone_cluster
    监控 yarn + flink rest api sessionId + flink rest api jobid **On yarn **优于 standlone_cluster

    注意:

    • session模式根据我在jira提了一个区分不同任务的日志的bug,根据回复者做了一些尝试都失败,目前暂时也没有其他的有效办法。
      详情见jira的FLINK-19768 传送链接

    • perjob和session模式需要依赖于Yarn,所以还需要多了其他的组件的监控,除了这一个弊端更建议On Yarn。

    相关文章

      网友评论

        本文标题:Flink部署模式的调研(看完你就知道你公司适合哪种)

        本文链接:https://www.haomeiwen.com/subject/rjdpwktx.html