资料来源:https://ci.apache.org/projects/flink/flink-docs-release-1.8/ops/deployment/yarn_setup.html
yarn配置信息:https://ci.apache.org/projects/flink/flink-docs-release-1.8/ops/config.html#yarn
准备pom依赖
<flink.version>1.9.1</flink.version>
<!--flink -->
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-clients_2.11</artifactId>
<version>${flink.version}</version>
<!--<scope>provided</scope>-->
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-yarn_2.11</artifactId>
<version>${flink.version}</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-streaming-java_${scala.binary.version}</artifactId>
<version>${flink.version}</version>
<scope>provided</scope>
</dependency>
具体的Java实现代码
/**
*
* 创建Yarn的配置
*
* @return
*/
public YarnConfiguration createYarnConfiguration(){
YarnConfiguration yarnConfiguration = new YarnConfiguration();
// ---------- yarn 相关配置 -------------//
String yarnHaEnabled = "true"; //这里默认使用高可用
yarnConfiguration.set("yarn.resourcemanager.ha.enabled", yarnHaEnabled); //是否激活高可用
yarnConfiguration.set("yarn.resourcemanager.zk-address", "zk1.test.com:2181,zk2.test.com:2181,zk3.test.com:2181"); //ZK集群地址
yarnConfiguration.set("yarn.resourcemanager.cluster-id", "yarnRM"); // 集群ID,使用自己服务器上配置的集群ID
if(Boolean