Flink 集群的启动脚本在:flink-dist 子项目中,位于 flink-bin 下的 bin 目录
启动脚本为:start-cluster.sh
该脚本会首先调用 config.sh 来获取 masters 和 workers,masters 的信息,是从 conf/masters 配置文件中获取的, workers 是从 conf/workers 配置文件中获取的。然后分别:
1、通过 jobmanager.sh 来启动 JobManager
2、通过 taskmanager.sh 来启动 TaskManager
它们的内部,都通过 flink-daemon.sh 脚本来启动 JVM 进程,分析 flink-daemon.sh 脚本发现:
1、JobManager 的启动代号:standalonesession
实现类是: StandaloneSessionClusterEntrypoint
2、TaskManager 的启动代号:taskexecutor实现类是:TaskManagerRunner
最终通过 java 命令来启动对应的 JVM 进程!
HDFS 集群启动的 shell 编写的方式也是一样的:
1、start-all.sh / start-dfs.sh
2、hadoop-daemon.sh start namenode/datanode/zkfc/journalnode
3、java org.apache.hadoop.server.namenode.NameNode



