Appplication Manager Quick Start¶
You can get started with Ververica Platform by following a quick start.
This quick start provide a simple development environment, but are not meant for production. For production deployment information, see the production deployment recommendations.
Prerequisites¶
This quickstart assumes access to Kubernetes with Helm and Minio.
Download and Install Ververica Platform¶
First download the Ververica Platform Helm Chart from Ververica. and install the platform using the provided chart.
$ helm install \
--name ververica-platform \
--set enabled.loggingDemo=true,enabled.metricsDemo=true \
daplatform-dist-trial-1.4.1.tgz
You can then access the Application Manager UI by port forwarding to localhost:8080
$ kubectl port-forward service/ververica-platform-appmanager 8080:80

Create Your First Deployment¶
Click the Create Deployment
button on the top right corner of the page to create a new deployment and provide it a name such as Top Speed Windowing.
Then under the Behavior
section we can specify how the application should be managed.
Deployment Target: | |
---|---|
The deployment target is where the Flink application should be run. We will set it to Kubernetes which is the same Kubernetes namespace where Application Manager is deployed. |
|
Upgrade Strategy: | |
The upgrade strategy should be Stateful so our application state is carried across Flink jobs. |
|
Initial State: | The initial state should be Running so that Application Manager will automatically deploy our job when we finish creating the deployment. |
Restore Strategy: | |
The restore strategy specifies what state should be used when starting a new job. We will set this to LATEST_SAVEPOINT . |

Under the resources section, we will specify the parallelism for our job and set it to 1
.
Application Manager will set sensible defaults for everything else so we will leave those blank.

Finally we can set up the configuration for our specific job by providing a uri to the Jar, along with setting checkpoint and savepoint directories.
Note
For this example you can use the Top Speed Windowing job that the Apache Flink® community publishes to Maven Central.

Finally, we will press the Create Deployment
button to start our job.
Modify Your Deployment¶
After creating our job, we want to make a change in a stateful and consistent manner. This could be changing the jar to release a new version of the application, or in our case, change a configuration such as the parallelism.
To make a change, we press Modify Deployment
which will either take us back to the creation screen we used earlier, or let us edit the deployment as yaml
.

You can use either, but in this case let’s use Edit as YAML
and change the parallelism of our application from 1
to 2
and press Apply Changes
.

Once the changes have been applied, Application Manager will take care of the rest, transitioning our application to use the updated configuration.

Suspend Your Deployment¶
When finished, press the Suspend
button to gracefully stop all resources and stop the application.

Appendix: Setting Up Minikube and Minio¶
If you do not have a Kubernetes installation readily availible you can use Minikube and Minio to run this quickstart locally.
Install Minikube by following the official instructions in the Kubernetes documentation. Once minikube has been installed you can start your local Kubernetes cluster.
$ minikube start --memory 8192 --cpus 4
Next, you will want to install Helm, a Kubernetes package manager. A full walk through of Helm can be found in our installation instructions.
$ kubectl --namespace kube-system create serviceaccount tiller
$ kubectl create clusterrolebinding tiller --clusterrole cluster-admin --serviceaccount=kube-system:tiller
$ helm init --service-account tiller
With the Helm install command below you can quickly install Minio, an S3 compatible object store that this guide uses for storing Apache Flink® checkpoints and savepoints. Note, you might need to change the clusterIP adress depending on your installation.
# Install Minio with username: admin and password: password
$ helm install \
--set accessKey=admin,secretKey=password,service.clusterIP=10.96.1.1 \
--name my-minio stable/minio
Finally, port forward the Minio UI to port 9000 and create a bucket call flink
.