flink1.12.x per-job cluster模式(yarn-cluster)-测试SocketWindowWordCount

注意

需要启动 yarn,命令如下:

  1. /program/bin/hadoop.sh start

说明

  1. 启动 tcp服务器

  2. 将flink的例子:SocketWindowWordCount 提交到集群

  3. SocketWindowWordCount 启动后,连接 tcp服务器

  4. tcp服务器输入单词,SocketWindowWordCount 接收到单词后,计算 wordcount

源代码

SocketWindowWordCount类源代码

启动 tcp服务器

监听 socket ,接收传入的数据,计算 wordcount

安装

linux可能没有该软件,需要安装,命令如下:

  1. yum install nc -y

启动 tcp 服务器

  1. nc -lk 9090

提交 jar 到 yarn 集群

  1. cd /program/flink-1.12.5
  1. flink run -m yarn-cluster /program/flink-1.12.5/examples/streaming/SocketWindowWordCount.jar --hostname hadoop1 --port 9090

解释:

  • -m:指定提交到哪台主机上
  • yarn-cluster:表示提交到 yarn 集群上
  • --hostname:连接tcp的服务器
  • --port:连接tcp的端口

执行结果

如下图:

红框处:

  • http://hadoop2:43659:flink web 管理页面
  • application_1640089376019_0015:yarn id,在 yarn web 网页中查看该任务

yarn web

访问:http://hadoop2:8088/ ,如下图,可见消耗资源还是很大的

测试:输入单词

tcp服务器 端输入单词,如下:

  1. aaa bbb ccc
  2. aaa
  3. ddd

在 flink 控制台中没有打印,因为是集群运行

查看打印结果-flink web 方式

通过 上面 web网页:http://hadoop2:43659 查看,如下图:

查看打印结果-yarn 方式

访问:http://hadoop2:8088 ,如下:

注意:上图可知,在 hadoop2hadoop3 上运行

在 yarn 查看任务

访问:http://hadoop2:8088 ,如下:

点击下图红框处,也会显示 flink web :

查看进程

在上面可知,在 hadoop2hadoop3 上运行

hadoop2

hadoop2 上运行 jps,可查看下面进程:

  1. 7545 YarnJobClusterEntrypoint

hadoop3

hadoop3 上运行 jps,可查看下面进程:

  1. 14547 YarnTaskExecutorRunner

停止任务

注意: ctrl+c 只会将任务切换到后台,不会退出任务

点击下图的 Cancel Job

命令停止

需要通过下面命令 kill 任务:

  1. yarn application --kill yarn的任务id

查看 yarn 的任务id

例子

  1. yarn application --kill application_1664713263689_0008

原文出处:https://malaoshi.top/show_1IX2SAcIevhv.html