Overview |
---|
1 - Setup the work environment |
2 - Install Knative |
3 - Deploy a Knative Service |
4 - Create a Knative Revision |
5 - Traffic Management |
6 - Auto-Scaling |
Debugging Tips |
The instructions will work on Linux and macOS, they have not been tested on Windows.
The Minikube Getting Started has detailled instructions on how to install Minikube for the different platforms.
At the time of this writing, Minikube was at v1.32.0.
This workshop is based on Knative v1.12.3.
To run the workshop completely off your own workstation you need the following tools. They have been installed on the bwLehrPool environment, already.
Tool | Source |
---|---|
Minikube | https://minikube.sigs.k8s.io/docs/start/ |
git CLI | https://git-scm.com/downloads |
kubectl | https://kubernetes.io/docs/tasks/tools/install-kubectl/ |
kn | https://github.com/knative/client/releases |
bombardier (HTTP Load generator) | https://github.com/codesenberg/bombardier/releases |
git clone https://github.com/Harald-U/knative-on-minikube.git
cd knative-on-minikube/code/
Note: On bwLehrpool change into the PERSISTENCE directory before cloning the repository.
In this workshop we will use Minikube in a somewhat minimal configuration with 2 CPUs and 4 GB of memory. (It is intended to run on a notebook with only 8GB of RAM available.)
The Docker driver allows you to install Kubernetes into an existing Docker install. On Linux, this does not require any virtualization at all, on macOS this is using the virtualization of Docker Desktop (HyperKit).
minikube start --cpus 2 --memory 4096 --driver=docker
bwLehrpool has sufficient RAM to increase memory for Minikube, you can use this command instead:
$ minikube start --cpus 2 --memory 6144 --driver docker
which will assign 6 GB of RAM.
Continue with 2 - Install Knative