Flink 环境搭建 windows StandAlone Cluster
- 基于maven 搭建Flink 集群
<dependencies>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-scala_${scala.binary.version}</artifactId>
<version>${flink.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-cep-scala_${scala.binary.version}</artifactId>
<version>${flink.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-java</artifactId>
<version>${flink.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-streaming-scala_${scala.binary.version}</artifactId>
<version>${flink.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-clients_${scala.binary.version}</artifactId>
<version>${flink.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-connector-kafka-0.11_${scala.binary.version}</artifactId>
<version>${flink.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-runtime_${scala.binary.version}</artifactId>
<version>${flink.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-statebackend-rocksdb_${scala.binary.version}</artifactId>
<version>${flink.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-runtime-web_${scala.binary.version}</artifactId>
<version>${flink.version}</version>
</dependency>
</dependencies>
启动jobmanager
public class JobManager {
public static void main(String[] args) {
args = String.format("--configDir %s --executionMode cluster --host localhost --webui-port 8081",
Thread.currentThread()
.getContextClassLoader()
.getResource("flink-conf.yaml")
.getFile()+"/..").split(" ");
JobManager$.MODULE$.main(args);
}
}
启动taskManager
package com.github.spafka.flink;
import org.apache.flink.runtime.taskmanager.TaskManager$;
public class TaskManager {
public static void main(String[] args) {
args= String.format("--configDir %s",
Thread.currentThread()
.getContextClassLoader()
.getResource("flink-conf.yaml")
.getFile()+"/..").split(" ");
TaskManager$.MODULE$.main(args);
}
}
其中class path下还要有flink.ymal 配置文件
jobmanager.rpc.address: localhost
jobmanager.rpc.port: 6123
taskmanager.numberOfTaskSlots: 10
parliament.default: 1
rest.port: 8081
此方法适用于本地测试