天天看点

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

点击上方蓝色字体,选择“设为星标”

回复”资源“获取更多惊喜

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本
集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

大数据技术与架构 点击右侧关注,大数据开发领域最强公众号!

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本
集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

暴走大数据 点击右侧关注,暴走大数据!

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

整个Flink集群的角色分为Jobmanager和TaskManager以Standalone为例来看一下脚本里面是怎样启动集群的找到源码的dist这里面包含了启动的脚本文件

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

standalone模式下我们通过start-cluster.sh这个脚本启动来看下里面具体做了什么

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

在最后调用了jobmanager.sh start 这个脚本和config.sh  中的TMSlaves 这个方法,分别启动了jobmanager和taskmanager先看一下Jobmanager在jobmanager.sh中导入了一些配置文件参数以外,脚本在最后执行了

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本
集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

到了这个文件flink-daemon.sh 

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本
集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

可以看到已经找到这样一个jobmanager的入口类org.apache.flink.runtime.entrypoint.StandaloneSessionClusterEntrypoint 了(1.6之前这里有较大的变化,详细的可以自己去研究一下)后面就是jobmanager的具体启动了现在在来看看TaskManager的启动方法config.sh 中 TMSlaves start

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

taskmanager.sh中

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本
集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

这里就和jobmanager的一样了,到了daemon.sh

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

这就是taskmanagaer的入口类org.apache.flink.runtime.taskexecutor.TaskManagerRunner了整个集群jobmanager和taskmanager就启动起来了后面角色的具体启动后期会随缘更新来看一下window下的启动

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本
集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

可以看到也差不多,都是走的这两个类作为启动类。

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本
集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

版权声明:

本文为《暴走大数据》整理,原作者独家授权。未经原作者允许转载追究侵权责任。 编辑|冷眼丶 微信公众号|暴走大数据 欢迎点赞+收藏 欢迎转发至朋友圈

集群脚本_Flink源码解读系列 | Flink集群Standalone启动脚本

文章不错?点个【在看】吧! ?