Course CP306A:
Google Container Engine and Kubernetes

(1 day)

 

Course Description

This one-day instructor-led class introduces participants to Google Container Engine (GKE) and Kubernetes. Through a combination of instructor-led presentations, demonstrations, and hands-on labs, students learn the key concepts and practices for deploying and maintaining applications using Google Container Engine.

Learning Objectives

At the end of this one-day course, participants will be able to:

  • Identify the purpose of and use cases for Google Container Engine and Kubernetes
  • Explain the function of the container cluster components: pods, labels, replication controllers, and services
  • Identify the purpose of and use cases for Google Container Registry
  • Create a Docker image and send it to the Google Container Registry
  • Explain the function of the cluster components: the master instance and cluster nodes
  • Use the Cloud Platform Console to create a container cluster
  • Use the Google Cloud SDK command-line tools and the kubectl command-line utility to interact with container clusters
  • Define a pod using a JSON template
  • Deploy the pod to a Container Engine cluster
  • Create a Container Engine cluster to host a dynamically scaled group of Redis instances
  • Complete a configuration file which defines a replication controller and the pod configuration that it manages
  • After creating a replication controller and pods, rescale the group
  • Deploy a container-based application using YAML files that define services, replication controllers, pods, and so on
  • Define firewall rules and load balancers to expose a service for a container-based application

Who Should Attend

This class is intended for solutions developers, systems operations professionals, solution architects, and development operations professionals who develop, migrate, and deploy container-based applications on Google Cloud Platform (GCP).

Prerequisites

Before attending this course, participants should have:

  • Attended CP100A – Google Cloud Platform Fundamentals (or equivalent experience)
  • Basic proficiency with command-line tools and linux operating system environments
  • Prior systems operations or development operations experience, either on-premises or in a public cloud environment
  • Familiarity with containers and container-based technologies such as Docker

Modules

Module 1: Introduction to Google Container Engine

Learning Objectives
  • Identify the purpose of and use cases for Google Container Engine and Kubernetes
  • Explain the function of the container cluster components: pods, labels, replication controllers, and services
  • Identify the purpose of and use cases for Google Container Registry

Lab, Part I: Sign Up for the Free Trial and Create a Project

Learning Objectives
  • Register for the GCP free trial
  • Create a project using the Cloud Platform Console

Lab, Part II: Create a Compute Engine Labs Instance

  • Create a Linux-based Compute Engine VM instance
  • Configure the Cloud SDK on the instance

Lab, Part III: Create a Docker Image and Send It to the Registry

  • Create a Docker image and send it to the Google Container Registry

Module 2: Google Container Engine Fundamentals

Learning Objectives
  • Explain the function of the cluster components: the master instance and cluster nodes

Lab: Create a Container Cluster

Learning Objectives
  • Use the Cloud Platform Console to create a container cluster

Module 3: Interacting with Google Container Engine

Learning Objectives
  • Describe the various methods used to interact with a container cluster

Lab: Working with Container Engine clusters using the Cloud SDK and kubectl

Learning Objectives
  • Use the Google Cloud SDK command-line tools and the kubectl command-line utility to interact with container clusters

Module 4: Container Clusters

Learning Objectives
  • Describe the high-level container cluster infrastructure
  • Identify the components of a container cluster node

Module 5: Pods

Learning Objectives
  • Describe the purpose of a pod and how to work with pods

Lab: Define and Deploy a Pod

Learning Objectives
  • Define a pod using a JSON template
  • Deploy the pod to a Container Engine cluster

Module 6: Replication Controllers

Learning Objectives
  • Describe the purpose of a replication controller and how to work with replication controllers

Lab: Replication Controllers

Learning Objectives
  • Create a Container Engine cluster to host a dynamically scaled group of Redis instances
  • Complete a configuration file which defines a replication controller and the pod configuration that it manages
  • After you creating the replication controller and its pods, rescale the group

Module 7: Services

Learning Objectives
  • Describe the purpose of a service and how to work with services

Lab: Deploy an Application

Learning Objectives
  • Deploy a container-based application using YAML files that define services, replication controllers, pods, and so on
  • Define firewall rules and load balancers to expose a service for a container-based application