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 Mavenpom.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 应用程序结合使用 。
指定应用程序的 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 存储桶名称和对象名称。有关说明如何上传应用程序代码的教程,请参阅 教程:开始使用适用于 Apache Flink 的托管服务中的 DataStream API 教程。
创建 Managed Service for Apache Flink 应用程序:使用以下方法之一创建 Amazon MSF 应用程序:
注意
默认情况下,Amazon MSF 使用加密您的应用程序。 AWS 拥有的密钥您也可以使用 AWS KMS 客户托管密钥 (CMKs) 创建新应用程序,以便自己创建、拥有和管理您的密钥。有关的信息 CMKs,请参见Amazon Managed Service for Apache Flink 中的密钥管理。
使用 AWS 控制台创建 Amazon MSF 应用程序:您可以使用 AWS 控制台创建和配置应用程序。
当您使用控制台创建应用程序时,将为您创建应用程序的依赖资源(例如 CloudWatch 日志流、IAM 角色和 IAM 策略)。
在使用控制台创建应用程序时,您可以从 Managed Service for Apache Flink - Create application(创建应用程序) 页面上的下拉列表中进行选择,以指定应用程序使用的 Apache Flink 版本。
有关如何使用控制台创建应用程序的教程,请参阅 教程:开始使用适用于 Apache Flink 的托管服务中的 DataStream API 教程。
使用 AWS CLI 创建您的 Amazon MSF 应用程序:您可以使用 C AWS LI 创建和配置您的应用程序。
使用 CLI 创建应用程序时,还必须手动创建应用程序的依赖资源(例如 CloudWatch 日志流、IAM 角色和 IAM 策略)。
在使用 CLI 创建应用程序时,您可以使用
CreateApplication操作的RuntimeEnvironment参数指定应用程序使用的 Apache Flink 版本。
注意
您可以更改现有应用程序的
RuntimeEnvironment。要了解如何操作,请参阅使用 Apache Flink 的就地版本升级。
使用客户自主管理型密钥
在 Amazon MSF 中,客户托管密钥 (CMKs) 是一项功能,您可以使用自己在 AWS Key Management Service (AWS KMS) 上创建、拥有和管理的密钥来加密应用程序的数据。对于 Amazon MSF 应用程序,这意味着所有受 Flink 检查点或快照约束的数据都使用您为该应用程序定义的 CMK 进行加密。
要在应用程序中使用 CMK,必须先创建新应用程序,然后应用 CMK。有关使用的更多信息 CMKs,请参阅Amazon Managed Service for Apache Flink 中的密钥管理。
启动您的 Managed Service for Apache Flink 应用程序
在构建应用程序代码、将其上传到 S3 并创建 Managed Service for Apache Flink应用程序后,您可以启动应用程序。启动 Managed Service for Apache Flink 应用程序通常需要几分钟。
可以使用以下方法之一以启动应用程序:
使用控制台启动适用于 Apache Flink 的托管服务:您可以通过在 AWS 控制台的应用程序页面上选择 “运行” 来运行应用程序。 AWS
使用 AP AWS I 启动适用于 Apache Flink 的托管服务:您可以使用操作运行应用程序。StartApplication
验证 Managed Service for Apache Flink 应用程序
您可以通过以下方式验证应用程序是否正常工作:
使用 CloudWatch 日志:您可以使用 CloudWatch 日志和 CloudWatch 日志见解来验证您的应用程序是否正常运行。有关在 Apache Flink 托管服务应用程序中使用 CloudWatch 日志的信息,请参阅。Amazon Managed Service for Apache Flink 的日志记录和监控
使用 CloudWatch 指标:您可以使用 CloudWatch 指标来监控应用程序的活动,或者您的应用程序用于输入或输出的资源(例如 Kinesis 流、Firehose 流或 Amazon S3 存储桶)中的活动。有关 CloudWatch 指标的更多信息,请参阅 Amazon CloudWatch 用户指南中的使用指标。
监控输出位置:如果应用程序将输出写入到某个位置(例如 Amazon S3 存储桶或数据库),您可以在该位置中监控写入的数据。