Warning
The Gravitational Workshops were archived 2023-07-01, as Gravitational no longer offers Kubernetes or Gravity training.
Please see ourGravitational is Teleport blog post for more information.
Open source series of workshops delivered by the Gravitational team.
- Docker 101 workshop
- Kubernetes 101 workshop using Minikube and Mattermost
- Kubernetes production patterns
- Kubernetes security patterns
- Kubernetes custom resources
- Gravity 101
- Gravity fire drill exercises
- Gravity logging (Gravity 5.5 and earlier)
- Gravity logging (Gravity 6.0 and later)
- Gravity monitoring & alerts (Gravity 5.5 and earlier)
- Gravity monitoring & alerts (Gravity 6.0 and later)
- Gravity networking and network troubleshooting
- Gravity upgrade (5.5)
- Gravity upgrade (7.0)
You will need a Linux or macOS box with at least7GB
of RAM and20GB
of free disk space available.
For Linux: follow instructions providedhere.
If you have macOS (Yosemite or newer), please download Docker for Machere.
Older docker package for OSes older than Yosemite -- Docker Toolbox locatedhere.
HyperKit is a lightweight macOS hypervisor which minikube supports out of the box and which should be already installed on your machine if you have Docker for Desktop installed.
More information:https://minikube.sigs.k8s.io/docs/reference/drivers/hyperkit/.
Alternatively, install VirtualBox like described below.
Follow the instructions here:https://minikube.sigs.k8s.io/docs/reference/drivers/kvm2/.
Alternatively, install VirtualBox like described below.
Let’s install VirtualBox.
Get latest stable version fromhttps:// virtualbox.org/wiki/Downloads.
Note:When using Ubuntu you may need to disable Secure Boot. For an alternative approach to installing with Secure Boot enabled, follow the guidehere.
For macOS:
curl -O https://storage.googleapis /kubernetes-release/release/v1.16.2/bin/darwin/amd64/kubectl \
&& chmod +x kubectl && sudo mv kubectl /usr/local/bin/
For Linux:
curl -O https://storage.googleapis /kubernetes-release/release/v1.16.2/bin/linux/amd64/kubectl \
&& chmod +x kubectl && sudo mv kubectl /usr/local/bin/
For macOS:
curl -Lo minikube https://storage.googleapis /minikube/releases/v1.5.1/minikube-darwin-amd64 \
&& chmod +x minikube && sudo mv minikube /usr/local/bin/
For Linux:
curl -Lo minikube https://storage.googleapis /minikube/releases/v1.5.1/minikube-linux-amd64 \
&& chmod +x minikube && sudo mv minikube /usr/local/bin/
Also, you can install drivers for various VM providers to optimize your minikube VM performance. Instructions can be found here:https://github /kubernetes/minikube/blob/master/docs/drivers.md.
Xcode will install essential console utilities for us. You can install it from the App Store.
To run cluster:
macOS
#starts minikube
$ minikube start --kubernetes-version=v1.16.2
#this command should work
$ kubectl get nodes
#use docker from minikube
$eval$(minikube docker-env)
#this command to check connectivity
$ docker ps
Linux
#starts minikube
$ minikube start --kubernetes-version=v1.16.2 --vm-driver=kvm2
#this command should work
$ kubectl get nodes
#use docker from minikube
$eval$(minikube docker-env)
#this command to check connectivity
$ docker ps
$ git clone https://github /gravitational/workshop.git
$cdworkshop
$ kubectl create -f registry.yaml