一 引言
Flink源码本身比较复杂,我打算以Flink的Standalone模式为入口,研究当一个jar包被提交进Flink后,flink如何处理的过程。
二 环境搭建
搭建过程可以参考官方文档
https://ci.apache.org/projects/flink/flink-docs-release-1.8/ops/deployment/cluster_setup.htm
启动 JobManager: bin/jobmanager.sh start
启动 TaskManager: bin/taskmanager.sh start
主要关注上面两个脚本,通过阅读脚本,可以知道底层调用的是 flink-daemon.sh,点进去可以发现,主要是下面几个类

如果shell脚本扎实,可以阅读shell脚本,明确知道红圈圈是两个入口类,但如果像我一样,对shell脚本一知半解,可以在启动集群后,使用jps命令
也能定位到入口类。
三 源码环境搭建
知道入口类后,可以抛弃flink提供的二进制发行包,考虑在ecli

本文从引言开始,介绍了Flink Standalone模式源码环境的搭建过程,包括参考官方文档设置环境,理解JobManager和TaskManager的启动脚本,以及在Eclipse中使用源码调试集群。在遇到的问题中,分享了如何解决缺少日志和启动报错的情况,并提供了源码编译的相关链接。
最低0.47元/天 解锁文章
591

被折叠的 条评论
为什么被折叠?



