Flink的多种提交/运行方式
Flink具有多种提交方式,比如:常用的local模式,stantalone模式,yarn模式,k8s等。
这里主要对比local,stantalone,yarn三种提交方式。
一、本地(local)模式,仅开发使用
1.1 纯粹的local模式运行
这就是直接运行项目中的代码的方式提交:
public class TestLocal {
public static void main(String[] args) throws Exception {
// getExecutionEnvironment()方法可以根据flink运用程序如何提交判断出是那种模式提交,Local本地提交,Cluster标是standalone提交,Yarn提交好像是YarnCluster
ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
// ExecutionEnvironment env = ExecutionEnvironment.createLocalEnvironment();
env.setParallelism(1); // 设置并行度为1
env
.readTextFile("D:\\code\\scalacode\\flinkstreamingreportforms\\pom.xml")
.print();
}
}
结果就是
1.2 local使用remote的方式运行(不建议)
一般可以使用这种模式进行远程debug。如:
public class TestLocal {
public static void main(String[] args) throws Exception {
ExecutionEnvironment env = ExecutionEnvironment.createRemoteEnvironment("remote_ip", 8090, "D:\\code\\scalacode\\flinkstreamingreportforms\\target\\flink-streaming-report-forms-1.0-SNAPSHOT-jar-with-dependencies.jar");
System.out.println(env.getParallelism());
env
.readTextFile("hdfs://remote_ip:9000/tmp/test.txt")
.print();
}
}
上面提交给的我们的开发环境fl