In this workshop you will learn how to:
- Provision Kubernetes using Google Container Engine
- Deploy and manage Docker containers using kubectl
Kubernetes Version: 1.2.2
- Navigate to https://console.cloud.google.com and login with your credentials.
- Select your project from the project listing.
- Navigate (using the menu or the search bar) to Compute Engine.
- Enable Compute Engine (this may take a few minutes).
- Click the following button to activate Cloud Shell, which is your "command line in the cloud" and will be used complete the labs.
Kubernetes can be configured with many options and add-ons, but can be time consuming to bootstrap from the ground up. In this section you will bootstrap Kubernetes using Google Container Engine (GKE).
In your Cloud Shell terminal, issue the following commands (feel free to change the zone or cluster name):
gcloud config set compute/zone europe-west1-b
gcloud container clusters create myk8scluster --num-nodes 7
In your Cloud Shell environment clone the following repository.
git clone https://github.com/bretmcg/kubernetes-workshop.git
cd kubernetes-workshop/kubernetes
Kubernetes is all about applications and in this section you will utilize the Kubernetes API to deploy, manage, and upgrade applications. In this part of the workshop you will use an example application called "app" to complete the labs.
- Containerizing your application
- Creating and managing pods
- Monitoring and health checks
- Managing application configurations and secrets
- Creating and managing services
- Creating and managing deployments
- Rolling out updates
App is hosted on GitHub and provides an example 12 Facter application. During this workshop you will be working with the following Docker images:
- kelseyhightower/monolith - Monolith includes auth and hello services.
- kelseyhightower/auth - Auth microservice. Generates JWT tokens for authenticated users.
- kelseyhightower/hello - Hello microservice. Greets authenticated users.
- ngnix - Frontend to the auth and hello services.