Apache Flink Submit

Apache Flink Submit

Certified

Submit Flink job from JAR over REST

Uploads a JAR to the Flink REST API then runs its entry class. Supports program arguments, explicit parallelism, and savepoint restore. Large JAR uploads are buffered in memory.

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

Fully qualified entry class inside the JAR.

JAR URI

URI of the job JAR to upload. Supports file://, kestra://, s3://, http:// and other schemes. Large artifacts are read fully into memory during upload.

Flink REST API URL

Base URL of the Flink cluster REST API (e.g., http://flink-jobmanager: 8081).

Defaultfalse

Allow non-restored state

Skip savepoint state that cannot be restored; defaults to false and used only when restoreFromSavepoint is set.

SubTypestring

Program arguments

Arguments passed to the main method; rendered then space-joined.

Job configuration

Additional Flink configuration key/values merged into the run request.

Job parallelism

Parallelism to use for this job; defaults to the Flink cluster setting when absent.

Reference (ref) of the pluginDefaults to apply to this task.

Restore from savepoint

Path to a savepoint used to start the job statefully.

Uploaded JAR ID

Identifier of the uploaded JAR on the Flink cluster.

Flink job ID

Identifier returned by Flink for the submitted job.