DocsAWS 101BlogServices

Managed Service for Apache Flink

Managed Service for Apache Flink applications: lifecycle, snapshots, logging options and tags, with real Flink jobs in Docker.

JSON-RPC (X-Amz-Target) multi-tenant 15 operations

Quick start

import boto3
kda = boto3.client("kinesisanalyticsv2", endpoint_url="http://localhost:4566",
                   region_name="us-east-1",
                   aws_access_key_id="test", aws_secret_access_key="test")
kda.create_application(ApplicationName="app", RuntimeEnvironment="FLINK-1_20",
                       ServiceExecutionRole="arn:aws:iam::000000000000:role/flink")
kda.start_application(ApplicationName="app")

Supported operations

15 operations exposed by this service as of MiniStack 1.5.29. Extracted directly from the handler dispatch in the source module.

AddApplicationCloudWatchLoggingOption CreateApplication CreateApplicationSnapshot DeleteApplication DeleteApplicationCloudWatchLoggingOption DeleteApplicationSnapshot DescribeApplication DescribeApplicationSnapshot ListApplicationSnapshots ListTagsForResource StartApplication StopApplication TagResource UntagResource UpdateApplication

CloudFormation

The CloudFormation engine provisions these resource types via this service:

AWS::KinesisAnalyticsV2::Application AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption

See CloudFormation engine for intrinsic support and lifecycle details.

Known limitations

  • Only FLINK-* runtimes; SQL and Studio (Zeppelin) applications are not implemented.
  • Jobs run only for FLINK-1_19 and FLINK-1_20 with Docker available; otherwise statuses advance without a running job.
  • aws-kinesisanalytics-runtime is not bundled: mount it in /opt/ministack/flink-lib or bundle it in the job jar.

Source

  • ministack/services/kinesisanalyticsv2.py

Read the source to verify the ops list above — dispatch tables and handler functions are the ground truth.