GeekIBLi

flink 提交任务

2021-07-06

下面演示如何通过admin页面提交任务 👇

准备task jar

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class StreamWordCount {  
public static void main(String[] args) throws Exception {

// 创建流处理执行环境
StreamExecutionEnvironment env = StreamContextEnvironment.getExecutionEnvironment();

// 从socket文本流读取数据
DataStream<String> inputDataStream = env.socketTextStream("localhost", 7777);

// 基于数据流进行转换计算
DataStream<Tuple2<String,Integer>> resultStream = inputDataStream.flatMap(new WordCount.MyFlatMapper())
.keyBy(0)
.sum(1);

resultStream.print();

// 执行任务
env.execute();
}
}

执行mvn install -DskipTest 可以得到相应的jar

admin提交jar

提交完jar包之后,需要设置相关参数,这个根据自己的实际情况来设置,下面是参考样例:

  • Enter Class : com.ibli.flink.StreamWordCount
    也就是程序入口,我们这是写了一个main方法,如果是程序的话,可以写对应bootstrap的启动类
  • Program Arguments : –host localhost –port 7777

点击 submit 之后查看提交的任务状态

查看任务

可以看到是有两个任务,并且都是在执行状态;
点击一个任务,还可以查看任务详情信息,和一些其他的信息,非常全面;

查看运行时任务列表

查看任务管理列表

点击任务可以跳转到详情页面 👇 下面是执行日志

我们还可以看到任务执行的标准输出结果✅

任务源数据

通过nc 输入数据,由程序读取7777端口输入流并解析数据

1
2
3
gaolei:geekibli gaolei$ nc -lk 7777
hello java
hello flink

取消任务如下

再次查看已完成任务列表 如下: