文档

Flink JAR作业快速入门

更新时间:

本文带您快速体验Flink JAR流作业和批作业的创建、部署和启动,以了解实时计算Flink版JAR作业的操作流程。

前提条件

  • 如果您使用RAM用户或RAM角色等身份访问,需要确认已具有Flink控制台相关权限,详情请参见权限管理

  • 已创建Flink工作空间,详情请参见开通实时计算Flink版

步骤一:开发JAR包

Flink控制台不提供JAR包的开发平台,因此您需要在线下完成JAR包的开发。DataStream API的开发方法、调试及连接器的使用详情请参见JAR作业开发

本快速入门为了带您快速熟悉Flink流作业和批作业的操作,已为您提供了测试JAR包和输入数据文件,您可以直接单击下载待后续步骤使用。

步骤二:上传测试JAR包和数据文件

  1. 登录实时计算控制台

  2. 单击目标工作空间操作列下的控制台

  3. 在左侧导航栏,单击资源管理

  4. 单击上传资源,选择您要上传的JAR包。

说明

本文测试JAR包、输入数据文件和输出数据文件存放路径一致。统一放在OSS控制台,名称为flink-test-oss的Bucket下。上传的文件会固定被保存在oss://flink-test-oss/artifacts/namespaces/flink-test-default目录下。

步骤三:部署JAR作业

流作业

  1. 登录实时计算控制台

  2. 单击目标工作空间操作列下的控制台

  3. 作业运维页面,单击部署作业

  4. 填写部署信息。

    参数

    说明

    示例

    部署作业类型

    JAR或者Python。

    JAR

    部署模式

    请选择部署为流模式或批模式。

    流模式

    部署名称

    填写对应的JAR作业名称。

    flink-streaming-test-jar

    引擎版本

    当前作业使用的Flink的引擎版本。引擎版本号含义、版本对应关系和生命周期重要时间点详情请参见引擎版本介绍

    vvr-6.0.7-flink-1.15

    JAR URI

    单击FlinkQuickStart-1.0-SNAPSHOT.jar下载测试JAR包后,再单击右侧上传图标选择文件,上传JAR包。

    oss://flink-test-oss/artifacts/namespaces/flink-test-default/FlinkQuickStart-1.0-SNAPSHOT.jar

    Entry Point Class

    程序的入口类。如果您的JAR包未指定主类,请在此处输入您的Endpoint Class类的标准路径。

    说明

    因为本文提供的测试JAR包中既包含了流作业代码,又包含批作业代码。所以,此处需要指定为流作业的程序入口。

    org.example.WordCountStreaming

    Entry Point Main Arguments

    填写传入参数信息,在主方法里面调用该参数。本文填写输入数据文件的OSS路径。

    --input oss://flink-test-oss/artifacts/namespaces/flink-test-default/Shakespeare

    附加依赖文件

    填写目标附加依赖文件的OSS路径或者URL。

    无需填写

    部署目标

    在下拉列表中,选择目标资源队列或者Session集群(请勿生产使用)。详情请参见管理资源队列步骤一:创建Session集群

    说明

    部署到Session集群的作业不支持显示数据曲线、配置监控告警和开启自动调优功能。请勿将Session集群用于正式生产环境,Session集群可以作为开发测试环境。详情请参见作业调试

    default-queue

    备注

    可选,填写备注信息。

    无需填写

    作业标签

    配置作业标签后,您可以在作业运维页面根据标签名标签值快速过滤找到目标作业。您最多创建3组作业标签。

    无需填写

    更多设置

    打开该开关后,您需要配置以下信息:

    • Kerberos集群:单击左侧下拉列表选择您已创建的Kerberos集群,Kerberos集群创建操作详情请参见注册Hive Kerberos集群

    • principal:Kerberos principal又称为主体,主体可以是用户或服务,用于在Kerberos加密系统中标记一个唯一的身份。

    无需填写

    说明

    参数填写详情请参见部署作业

  5. 单击部署

批作业

  1. 登录实时计算控制台

  2. 单击目标工作空间操作列下的控制台

  3. 作业运维页面,单击部署作业

  4. 填写部署信息。

    参数

    说明

    示例

    部署作业类型

    JAR或者Python。

    JAR

    部署模式

    请选择部署为流模式或批模式。

    批模式

    部署名称

    填写对应的JAR作业名称。

    flink-batch-test-jar

    引擎版本

    当前作业使用的Flink的引擎版本。引擎版本号含义、版本对应关系和生命周期重要时间点详情请参见引擎版本介绍

    vvr-6.0.7-flink-1.15

    JAR URI

    单击FlinkQuickStart-1.0-SNAPSHOT.jar下载测试JAR包后,再单击右侧上传图标选择文件,上传JAR包。

    oss://flink-test-oss/artifacts/namespaces/flink-test-default/FlinkQuickStart-1.0-SNAPSHOT.jar

    Entry Point Class

    程序的入口类。如果您的JAR包未指定主类,请在此处输入您的Endpoint Class类的标准路径。

    说明

    因为本文提供的测试JAR包中既包含了流作业代码,又包含批作业代码。所以,此处需要指定为批作业的程序入口。

    org.example.WordCountBatch

    Entry Point Main Arguments

    填写输入数据文件的OSS路径。

    说明

    输出文件和测试JAR包存放路径一致。在此您仅需要指定结果数据输出文件路径和名称,无需提前在指定目录创建输出文件。

    --input oss://flink-test-oss/artifacts/namespaces/flink-test-default/Shakespeare --output oss://flink-test-oss/artifacts/namespaces/flink-test-default/batch-quickstart-test-output.txt

    附加依赖文件

    填写目标附加依赖文件的OSS路径或者URL。

    无需填写

    部署目标

    在下拉列表中,选择目标资源队列或者Session集群(请勿生产使用)。详情请参见管理资源队列步骤一:创建Session集群

    说明

    部署到Session集群的作业不支持显示数据曲线、配置监控告警和开启自动调优功能。请勿将Session集群用于正式生产环境,Session集群可以作为开发测试环境。详情请参见作业调试

    default-queue

    备注

    可选,填写备注信息。

    无需填写

    作业标签

    配置作业标签后,您可以在作业运维页面根据标签名标签值快速过滤找到目标作业。您最多可以创建3组作业标签。

    无需填写

    更多设置

    打开该开关后,您需要配置以下信息:

    • Kerberos集群:单击左侧下拉列表选择您已创建的Kerberos集群,Kerberos集群创建操作详情请参见注册Hive Kerberos集群

    • principal:Kerberos principal又称为主体,主体可以是用户或服务,用于在Kerberos加密系统中标记一个唯一的身份。

    无需填写

  5. 单击部署

步骤四:启动并查看Flink计算结果

  1. 作业运维页面,单击目标作业名称操作列中的启动

  2. 配置资源信息和基础设置。

    作业启动参数配置详情请参见作业启动

  3. 单击启动

    单击启动后,您可以看到作业状态变为运行中,则代表作业运行正常。

    重要

    如果您需要启动批作业,则需要在作业运维页面,将作业类型切换为批作业,才可以看到您上线的批作业。系统默认展示的作业为流作业

  4. 查看Flink计算结果。

    说明

    由于Taskmanager.out日志展示数据限制为2000条,因此流作业和批作业的结果数据条数会不一致。有关限制详情请参见Print

    • 流作业示例的计算结果

      在TaskManager中以.out结尾的日志文件中,搜索shakespeare查看Flink计算结果。

      image.png

    • 批作业示例的计算结果

      登录OSS管理控制台,在您配置的数据输出文件存放目录查看结果。

      本示例中的数据输出文件目录为oss://flink-test-oss/artifacts/namespaces/flink-test-default/batch-quickstart-test-output.txt批作业结果

(可选)步骤五:停止作业

如果您对作业进行了修改且希望修改生效,则需要先上线,然后停止再启动。另外,如果作业无法复用State,希望作业全新启动时,也需要停止后再启动作业。作业停止详情请参见作业停止

相关文档