Getting Started - Installation
In this getting started guide you will install Ververica Platform and integrate it with MinIO for Universal Blob Storage. Optionally, we also show you how to link the platform to a metrics and logging system.
Setting the Stage
Kubernetes
Ververica Platform runs on top of Kubernetes. In order to get started locally we recommend using minikube, but any other Kubernetes Cluster will do, too.
Minikube relies on either virtualization support by your operating system and a hypervisor (e.g. Virtualbox), or a container runtime (e.g. Docker). Please check the official installation guide for details.
Though the Ververica Platform itself runs on any Kubernetes cluster version 1.11+, other parts of the Playground require version 1.16+.
Minikube on Mac OS (homebrew)
brew install kubectl minikube
Minikube on Windows (Chocolatey)
choco install kubernetes-cli minikube
Minikube on Linux
There are packages available for most distros and package managers. Please check the kubectl installation guide as well as the minikube installation guide for details.
Spinning up a Kubernetes Cluster
First, you start minikube
. The platform (including a small Apache Flink® application) requires at least 8G of memory and 4 CPUs.
minikube start --memory=8G --cpus=4
If this went well, you can continue and check if all system pods are ready.
kubectl get pods -n kube-system
Depending on your exact version of minikube, the output should look more or less similar to
NAME READY STATUS RESTARTS AGE
coredns-5644d7b6d9-56zhg 1/1 Running 1 2m
coredns-5644d7b6d9-fdnts 1/1 Running 1 2m
etcd-minikube 1/1 Running 1 2m
kube-addon-manager-minikube 1/1 Running 1 2m
kube-apiserver-minikube 1/1 Running 1 2m
kube-controller-manager-minikube 1/1 Running 1 2m
kube-proxy-9w92r 1/1 Running 1 2m
kube-scheduler-minikube 1/1 Running 1 2m
storage-provisioner 1/1 Running 2 2m
If all pods are running, you are good to go.
Helm
"Helm helps you manage Kubernetes applications — Helm charts help you define, install, and upgrade even the most complex Kubernetes application." - helm.sh
We distribute Ververica Platform as a Helm chart. To install Helm please follow the instructions on the official installation guide or use one of the one-liners below.
Please ensure that you install Helm v3+. This can be verified by running helm version
after installation.
Helm on Mac OS (homebrew)
brew install helm
Helm on Windows (Chocolatey)
choco install kubernetes-helm
Helm on Linux
As before, there is a package available for most distros and package managers. For details check the official installation guide.
Setting Up the Playground
This guide is based on the Ververica Platform playground repository which contains scripts and Helm values files to make for a smooth getting-started experience. Please clone the repository before continuing; all commands below are meant to be executed from the repository root directory.
git clone --branch release-2.5 https://github.com/ververica/ververica-platform-playground.git
cd ververica-platform-playground
Anatomy of this Playground
For this playground, you will create two Kubernetes namespaces: vvp
and vvp-jobs
.
vvp
will host the control plane of Ververica Platform and other services, while the Apache Flink® jobs managed by the platform will run in the vvp-jobs
namespace.
In addition to Ververica Platform, we will set up MinIO in the vvp
namespace, which will be used for artifact storage and Apache Flink® checkpoints & savepoints (see Universal Blob Storage).
Installing the Components
TL;DR
You can skip all of the installation steps outlined below by running:
- Community Edition
- Enterprise Edition
./setup.sh --edition community
./setup.sh --edition enterprise