Submit a Flink job using a JAR file.

This task submits a job to Apache Flink using a JAR file. It supports job configuration, parallelism settings, and savepoint restoration.

yaml
type: "io.kestra.plugin.flink.Submit"

Submit a Flink batch job

yaml
id: flink-batch-job
namespace: company.team

tasks:
  - id: submit-job
    type: io.kestra.plugin.flink.Submit
    restUrl: "http://flink-jobmanager:8081"
    jarUri: "s3://flink/jars/my-batch-job.jar"
    entryClass: "com.example.BatchJobMain"
    args:
      - "--input"
      - "s3://input/data/"
      - "--output"
      - "s3://output/results/"
    parallelism: 4
Properties

Main class to execute

The fully qualified name of the main class to execute.

URI of the JAR file to submit

The URI pointing to the JAR file containing the Flink job. Supports file://, kestra://, s3://, http:// and other schemes. Note: Large JAR files (e.g., fat JARs with many dependencies) are loaded into memory during upload, which may require sufficient heap space.

Flink REST API URL

The base URL of the Flink cluster's REST API, e.g., 'http://flink-jobmanager: 8081'

Default false

Allow non-restored state

Allow to skip savepoint state that cannot be restored. Defaults to false.

SubType string

Program arguments

Arguments to pass to the main method of the job.

SubType string

Job configuration

Additional configuration parameters for the job.

Job parallelism

The parallelism for the job execution. If not specified, the cluster default parallelism will be used.

Restore from savepoint

Path to a savepoint to restore the job from.

The JAR ID on the Flink cluster

The identifier of the uploaded JAR on the Flink cluster

The Flink job ID

The unique identifier assigned to the submitted job