Flink 提交任务的两种方式

本文开头附:Flink 学习路线系列 ^ _ ^

向 Flink 集群提交任务,共有以下两种方式:

  • 使用Web页面Submit New Job方式提交
  • 使用命令行方式提交

示例

       Flink 安装包,自带有一些示例程序,我们只需要将 Flink 安装包解压即可。解压缩后,我们会在 examples 目录下面,看到一些示例程序。
Flink 提交任务的两种方式_第1张图片
接下来,我们使用 streaming 文件夹中的 SocketWindowWordCount.jar (从Socket端口读数据,执行WordCount)来演示如何提交任务。
Flink 提交任务的两种方式_第2张图片

1.Web 界面任务提交

  1.1通过 Submit New Job 来提交任务

Flink 提交任务的两种方式_第3张图片
Flink 提交任务的两种方式_第4张图片
Flink 提交任务的两种方式_第5张图片

  1.2 此时我们发现,可用槽位已经为0,正在运行 Jobs 为1

Flink 提交任务的两种方式_第6张图片

  1.3 我们在 master 节点启动一个 Socket 服务

   命令:nc -lk 8888(提示:nc: command not found,通过yum install nc来安装) 
    在这里插入图片描述

  1.4 接下来我们通过Socket窗口,输入一些字符。

在这里插入图片描述

  1.5 WordCount 计数完成后,我们在 TaskManager 配置页面,通过 stdout 可以查看到结果信息

Flink 提交任务的两种方式_第7张图片

  1.6 因为Flink任务是实时的,启动就不会停止,除非出错或者人为取消Job

Flink 提交任务的两种方式_第8张图片

2.命令行方式任务提交

2.1 命令如下:

 bin/flink run -m master:8081 -p 4 -c org.apache.flink.streaming.examples.socket.SocketWindowWordCount 【jar包所在路径】 --hostname master --port 8888

2.2 示例命令:
bin/flink run -m master:8081 -p 4 -c org.apache.flink.streaming.examples.socket.SocketWindowWordCount /usr/local/env/flink-1.9.1/examples/streaming/SocketWindowWordCount.jar --hostname master --port 8888

2.3 命令参数说明:
 -m:指定主机名后面的端口为 JobManager的 REST 通信端口,而不是 RPC的端口,RPC通信端口是 6123(在提交任务时,是通过 REST 端口号(HTTP端口号),将任务上传到 JobManager.);
 -p:指定具体的并行度(即占用几个 Task Slots 来跑任务);
 -c:指定 main 方法的全类名。
 -s:指定 savePoint 的路径(用于任务重启时接上次操作继续进行,恢复数据使用。在本系列博文后面会有介绍。见:Flink笔记(十九):Flink 从 Checkpoint 中恢复数据)。
 --hostname xxx --port xxx 传入 main 方法 的参数(以  --属性名 属性值的方式传入)

2.4 操作如下图所示:
在这里插入图片描述
2.5 任务提交成功图示:
Flink 提交任务的两种方式_第9张图片
2.6 接下来,你便可以根据1.4-1.5步骤进行测试了


博主写作不易,来个关注呗

求关注、求点赞,加个关注不迷路 ヾ(◍°∇°◍)ノ゙

博主不能保证写的所有知识点都正确,但是能保证纯手敲,错误也请指出,望轻喷 Thanks♪(・ω・)ノ

你可能感兴趣的:(Flink)