Craft Kubernetes Workshop
Latest commit 8882ebc Aug 26, 2016 @kelseyhightower committed on GitHub Update
Failed to load latest commit information.
kubernetes update labs Apr 27, 2016
labs Update Aug 26, 2016
slides add craft kubernetes workshop Apr 25, 2016 Fix typo in readme Jun 21, 2016 update Apr 25, 2016

Craft Kubernetes Workshop

In this workshop you will learn how to:

Kubernetes Version: 1.2.2

Google Compute Engine (GCE)

GCE will be used to setup a Kubernetes cluster from the ground up. This workshop will require the ability to create the following resources:

  • Virtual Machines
  • Routes
  • Firewall Rules

Setup GCE and Enable Cloud Shell

In this section you will create a Google Compute Engine (GCE) account. GCE will allow you to the create VMs, Networks, and Storage volumes required for this workshop. GCE also provides the Cloud Shell computing environment that will be used complete the labs.


Clone this Repository

Login into your Cloud Shell environment and clone this repository.

git clone

Provision a Kubernetes cluster from scratch

Kubernetes is a distributed system composed of a collection of microservices. Like any system Kubernetes must be installed and configured. In this section you will install Kubernetes from the ground up with the minimal configuration required to get a cluster up and running.

Core Infrastructure

A Kubernetes cluster requires compute resources which can come from VMs or bare-metal machines, a container runtime environment such as Docker, and assumes the Kubernetes network model is in place.


Provision the Kubernetes Controller

Kubernetes can be broken up into two parts: the controller and worker nodes. The Kubernetes controller is where all cluster configuration is stored and is home to the Kubernetes API, Controller Manager, and Scheduler.


Provision the Worker Nodes

Kubernetes worker nodes are responsible for running containers (inside of pods), service loadbalancing, and reporting status information and metrics for nodes and pods. In this section you will setup the Kubernetes worker nodes and install the following components:

  • kubelet


Provision Kubernetes using GKE

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).

Managing Applications with 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.

App is hosted on GitHub and provides an example 12 Factor application. During this workshop you will be working with the following Docker images: