Note: This section is designed to provide a convenient process for submitting Flink jobs using the StreamPark platform through simple operational steps.
Click “OK” to save
Depending on the Flink deployment mode and resource management method, StreamPark supports the following six job modes:
- Standalone Session
- Yarn Session
- Yarn Per-job
- Yarn Application
- K8s Session
- K8s Application
For this guide, choose the simpler Standalone Session mode (indicated by the green line in the image below) for a quick start.
start-cluster.sh
Page access: http://vm:8081/
- Development Mode: Choose “Flink SQL”
- Execution Mode: Choose “remote”
- Flink Version: Select “flink-1.17”, as configured in “1.1 Configure FLINK_HOME”
- Flink Cluster: Select “myStandalonSession”, as configured in “1.2 Configure FLINK Cluster”
- Flink SQL: See example below
- Application Name: Job name
Click the blue “Submit” button to submit the job
Build successful
StreamPark dashboard
View job details

With this, the process of submitting a Flink job using the StreamPark platform is essentially complete. Below is a brief summary of the general process for managing Flink jobs on the StreamPark platform.
Stopping, modifying, and deleting Flink jobs through the StreamPark platform is relatively simple and can be experienced by users themselves. It is worth noting that: If a job is in a running state, it cannot be deleted and must be stopped first.
Menu location
For managing users of the StreamPark platform
Allows users to operate Flink jobs in the form of Restful APIs
curl -X POST '/flink/app/cancel' \ -H 'Authorization: 69qMW7reOXhrAh29LjPWwwP+quFqLf++MbPbsB9/NcTCKGzZE2EU7tBUBU5gqG236VF5pMyVrsE5K7hBWiyuLuJRqmxKdPct4lbGrjZZqkv5lBBYExxYVMIl+f5MZ9dbqqslZifFx3P4A//NYgGwkx5PpizomwkE+oZOqg0+c2apU0UZ9T7Dpnu/tPLk9g5w9q+6ZS2p+rTllPiEgyBnSw==' \ -H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' \ --data-urlencode 'savePoint=' \ --data-urlencode 'id=100001' \ --data-urlencode 'savePointed=false' \ --data-urlencode 'drain=false' \ -i
User roles: Currently, there are two types, develop and admin.
Teams: Used to distinguish and manage jobs of different teams in an enterprise.
(Team) member management
Managing system menus
StreamPark integrates with code repositories to achieve CICD
To use, click “+ Add new,” configure repo information, and save.
Core Module: Used for full lifecycle management (creation, build, start, stop, delete, etc.) of Flink jobs.
Variable management: Manage variables that can be used when creating Application jobs.
For system configurations: Maven, Docker, alert email, Ingress
Supports multiple alert notification modes
【To be improved】Can perform some operations on Flink jobs, such as validation of Flink SQL, etc.
- For executing Flink jobs in Session mode, there are three types based on different resource management methods: Standalone, Yarn, K8s
- 【To be improved】Application scenario: Suitable for scenarios with sufficient resources and where job isolation requirements are not very strict
- For more on session mode, see: https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/deployment/overview/#session-mode
【To be improved】In fact, a key feature of StreamPark is the optimization of the management mode for native Flink jobs at the user level, enabling users to rapidly develop, deploy, run, and monitor Flink jobs using the platform. Meaning, if users are familiar with native Flink, they will find StreamPark even more intuitive to use.
Session Mode
Application Mode
Official website: https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/deployment/config/
Native submission command (with parameters)
flink run-application -t yarn-application \ -Dyarn.provided.lib.dirs="hdfs://myhdfs/my-remote-flink-dist-dir" \ hdfs://myhdfs/jars/my-application.jar
When creating or modifying a job, add in “Dynamic Properties” as per the specified format
【To be improved】
Reference: https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/ops/state/task_failure_recovery/
【To be improved】Generally, alerts are triggered when a job fails or an anomaly occurs
【To be improved】
cp: https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/dev/datastream/fault-tolerance/checkpointing/ sp: https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/ops/state/savepoints/
Users can set a savepoint when stopping a job
View savepoint
Users have the option to choose during job startup
【To be improved】
【To be improved】
View through “Apache Flink® Dashboard”
In addition, for jobs in k8s mode, StreamPark also supports real-time display of startup logs, as shown below
Native Flink provides a REST API Reference: https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/ops/rest_api/
StreamPark also provides Restful APIs, supporting integration with other systems. For example, it offers REST API interfaces for starting and stopping jobs.