创建 Managed Service for Apache Flink 应用程序 - Managed Service for Apache Flink
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon Managed Service for Apache Flink(Amazon MSF)之前称为 Amazon Kinesis Data Analytics for Apache Flink。

创建 Managed Service for Apache Flink 应用程序

本主题包含如何创建 Managed Service for Apache Flink 应用程序的相关信息。

构建 Managed Service for Apache Flink 应用程序代码

本节介绍用来为 Managed Service for Apache Flink 应用程序构建应用程序代码的组件。

我们建议您将支持的最新 Apache Flink 版本用于应用程序代码。有关升级 Managed Service for Apache Flink 应用程序的信息,请参见使用 Apache Flink 的就地版本升级

您可以使用 Apache Maven 构建应用程序代码。Apache Maven 项目使用 pom.xml 文件以指定它使用的组件的版本。

注意

Managed Service for Apache Flink 支持大小不超过 512 MB 的 JAR 文件。如果使用的 JAR 文件超过该大小,应用程序将无法启动。

应用程序现在可以使用任何 Scala 版本的 Java API。您必须将选择的 Scala 标准库捆绑到您的 Scala 应用程序中。

有关为使用 Apache Beam 创建 Managed Service for Apache Flink 应用程序的信息,请参阅将 Apache Beam 与 Managed Service for Apache Flink 应用程序结合使用

在使用 Managed Service for Apache Flink 版本 1.1.0 及更高版本时,您可以在编译应用程序时指定应用程序使用的 Apache Flink 版本。使用 -Dflink.version 参数提供 Apache Flink 版本。例如,如果您使用的是 Apache Flink 1.19.1,请提供以下信息:

mvn package -Dflink.version=1.19.1

对于使用旧版本的 Apache Flink 构建应用程序,请参阅 早期版本

创建 Managed Service for Apache Flink 应用程序

在构建应用程序代码后,您可以执行以下操作以创建 Managed Service for Apache Flink(Amazon MSF)应用程序:

  • 上传应用程序代码:将应用程序代码上传到 Amazon S3 存储桶。在创建应用程序时,您可以指定应用程序代码的 S3 存储桶名称和对象名称。有关说明如何上传应用程序代码的教程,请参阅 教程:开始在 Managed Service for Apache Flink 中使用 DataStream API 教程。

  • 创建 Managed Service for Apache Flink 应用程序:使用以下方法之一创建 Amazon MSF 应用程序:

    注意

    默认情况下,Amazon MSF 使用 Amazon 拥有的密钥 加密您的应用程序。您还可以使用 Amazon KMS 客户自主管理型密钥(CMK)创建新应用程序,以便自己创建、拥有和管理密钥。有关 CMK 的信息,请参阅 Amazon Managed Service for Apache Flink 中的密钥管理

    • 使用 Amazon 控制台创建 Amazon MSF 应用程序:您可以使用 Amazon 控制台创建和配置应用程序。

      在使用控制台创建应用程序时,将为您创建应用程序的相关资源(例如 CloudWatch Logs 流、IAM 角色和 IAM 策略)。

      在使用控制台创建应用程序时,您可以从 Managed Service for Apache Flink - Create application(创建应用程序) 页面上的下拉列表中进行选择,以指定应用程序使用的 Apache Flink 版本。

      有关如何使用控制台创建应用程序的教程,请参阅 教程:开始在 Managed Service for Apache Flink 中使用 DataStream API 教程。

    • 使用 Amazon CLI 创建 Amazon MSF 应用程序:您可以使用 Amazon CLI 创建和配置应用程序。

      在使用 CLI 创建应用程序时,您还必须手动创建应用程序的相关资源(例如 CloudWatch Logs 流、IAM 角色和 IAM 策略)。

      在使用 CLI 创建应用程序时,您可以使用 RuntimeEnvironment 操作的 CreateApplication 参数指定应用程序使用的 Apache Flink 版本。

    注意

    您可以更改现有应用程序的 RuntimeEnvironment。要了解如何操作,请参阅使用 Apache Flink 的就地版本升级

使用客户自主管理型密钥

在 Amazon MSF 中,客户自主管理型密钥(CMK)是一项功能,您可以使用自己在 Amazon Key Management Service(Amazon KMS)上创建、拥有和管理的密钥来加密应用程序的数据。对于 Amazon MSF 应用程序,这意味着所有受 Flink 检查点快照约束的数据都使用您为该应用程序定义的 CMK 进行加密。

要在应用程序中使用 CMK,必须先创建新应用程序,然后应用 CMK。有关使用 CMK 的更多信息,请参阅 Amazon Managed Service for Apache Flink 中的密钥管理

启动您的 Managed Service for Apache Flink 应用程序

在构建应用程序代码、将其上传到 S3 并创建 Managed Service for Apache Flink应用程序后,您可以启动应用程序。启动 Managed Service for Apache Flink 应用程序通常需要几分钟。

可以使用以下方法之一以启动应用程序:

  • 使用控制台启动 Managed Service for Apache Flink:您可以通过在Amazon控制台的应用程序页面上选择 “运行” 来运行应用程序。Amazon

  • 使用 AmazonAPI 启动 Managed Service for Apache Flink 应用程序:您可以使用 开始申请 操作运行应用程序。

验证 Managed Service for Apache Flink 应用程序

您可以通过以下方式验证应用程序是否正常工作:

  • 使用 CloudWatch Logs :您可以使用 CloudWatch Logs 和 CloudWatch Logs Insights 来验证您的应用程序是否正常运行。有关在 Managed Service for Apache Flink 应用程序中使用 CloudWatch Logs 的信息,请参阅Amazon Managed Service for Apache Flink 的日志记录和监控

  • 使用 CloudWatch 指标:您可以使用 CloudWatch 指标监控应用程序的活动,或监控应用程序用于输入或输出的资源(例如 Kinesis 流、Firehose 流或 Amazon S3 存储桶)中的活动。有关 CloudWatch 指标的更多信息,请参阅《Amazon CloudWatch 用户指南》中的使用指标

  • 监控输出位置:如果应用程序将输出写入到某个位置(例如 Amazon S3 存储桶或数据库),您可以在该位置中监控写入的数据。