Skip to content
This repository has been archived by the owner on Jul 22, 2024. It is now read-only.

Course Outline Wiki

Jason Kennedy edited this page Nov 30, 2017 · 1 revision

Course name: Get started with the IBM Cloud Containers service and Kubernetes

dwc015

Self-paced x hours Free Badge: TBD

Course building process Create labs in GitHub. Complete draft of course outline. Edit labs in GitHub. Then, copy over to WP. Create videos. Create checkpoint/quiz questions. See h5p.org for ideas beyond T/F, multiple choice question types. Build the course in learning management system.


Overview A container is a standard way to package an app and all its dependencies, so that the app can be moved between environments and run without changes. Unlike virtual machines, containers do not bundle the operating system. Only the app code, run time, system tools, libraries, and settings are packaged inside the container, which makes a container more lightweight, portable, and efficient than a virtual machine.

Kubernetes provides a way to orchestrate multiple containers at once. In Kubernetes, containers are run in related groupings called pods. Pods are generally grouped by namespace and can work as either independent microservices or interconnected groups of services working together as microservices in a Service Oriented Architecture. This course will walk through building out a highly available, scalable application. Each lab will successively build on the lab before it, and when it is finished, a user will understand how to set up, deploy, and manage a kubernetes cluster with a service-oriented web application running.

Objectives:

After you complete this course, you will understand or know how to:

  1. Infer the difference between monolithic and service oriented architecture
  2. Set up and configure a Highly Available, Scalable Kubernetes Cluster
  3. Deploy a microservice to a kubernetes cluster
  4. Configure a highly available cluster

Prerequisites

Prerequisite skills:

  1. Must understand the basics of containers, such as Docker containers
  2. If you're new to containers, be sure to take the intro to Docker containers course (title and link TBD).

Prerequisite software accounts:

  1. IBM Bluemix account
  2. Plugins for the IBM Containers Service (will get in Module 1)

Lab 0: Installing prerequisite CLIs https://github.com/colemanjackson/container-service-getting-started-wt/tree/dwworks-additions/Lab%200


Module 1: Basics of containers and container orchestration [remember that there will be an intro to Docker course that we'll prereq for this course. See John's course on Docker: https://ibm.ent.box.com/folder/24166655030]

Video: what is Kubernetes and how it relates/augments Docker; introduce lab 1. [could be more than one video; keep conceptual videos under 5 mins if possible; soln videos can be longer]

Lab 1: Set up and deploy your first application https://github.com/colemanjackson/container-service-getting-started-wt/tree/dwworks-additions/Lab%201

Describes how to push an image of an application to the IBM Containers Registry and deploying a basic application to a cluster.

Solution video for lab 1:

Checkpoint question

  1. What is Kubernetes? Select all that apply. a) A container orchestration platform developed by Google b) A reusable platform for managing containers and applications c) An acceptable way to manage and store container images d) Able to provide high-availability deployments and conduct its own health checking answers: a, b, d

Checkpoint


Module 2: Kubernetes services and configuration

Conceptual video(s): more on the basics of Kubernetes

Lab intro video: [can combine with conceptual video]

Lab 2: Update replicas and run health checks https://github.com/colemanjackson/container-service-getting-started-wt/tree/dwworks-additions/Lab%202

[is this still correct:] 1: Working with Images 2: Deploy a basic "Hello World" Application (Kube Yaml config begins here) 3: Kubernetes Services and Basic Routing of containers 4: Health5 Checking and pod replicas in Kubernetes 5: DaemonSets, PSets, PVC. TODO 6: Scaling Deployments in Kubernetes

Lab solution video:

1 - 2 Checkpoint question (T/F, multiple/single choice):

  1. What is a Replica Set? [need 4 choices to select from]

Module 3: Integrating Bluemix and Watson services into a Kubernetes application

Conceptual video(s):

Lab intro video: [can combine with conceptual video]

Lab 3: Deploy an application with Bluemix services https://github.com/colemanjackson/container-service-getting-started-wt/tree/dwworks-additions/Lab%203 1: Working with the Containers Dashboard to start an image application 2: IBM Bluemix Containers Service CLI 3: Using a bluemix service as a kubernetes service 4: Deploy an application to the IBM Bluemix Containers Service

Lab solution video:

1- 2 Checkpoint questions

Module 4: High availability deployments Conceptual video:

Lab 4 intro video:

Lab 4: Deploy a highly available application https://github.com/colemanjackson/container-service-getting-started-wt/tree/dwworks-additions/Lab%204

Lab 4 solution video:

2 Checkpoint questions

Module 5: Container security

Conceptual video:

Lab intro video:

Lab 5: Security with the IBM Bluemix Containers service https://github.com/colemanjackson/container-service-getting-started-wt/tree/dwworks-additions/Lab%205

Lab 5 solution video:

2 Checkpoint questions

Module 6: DevOps flows and containers

Conceptual video:

Lab intro video:

Lab 6: CI/DC with the IBM Bluemix Containers Service https://github.com/colemanjackson/container-service-getting-started-wt/tree/dwworks-additions/Lab%206

Lab 6 solution video:

2 Checkpoint questions

Module 7: Plugins that manage deployments in Kubernetes

Conceptual video:

Lab intro video:

Lab 7: Ecosystem of Kubernetes with the IBM Bluemix Containers Service https://github.com/colemanjackson/container-service-getting-started-wt/tree/dwworks-additions/Lab%207

Lab 7 solution video:

2 Checkpoint questions

Module 8: Microservices in an orchestrated world: Conceptual video:

Lab 8 intro video:

Lab 8: Manage microservices and service oriented architecture: https://github.com/colemanjackson/container-service-getting-started-wt/tree/dwworks-additions/Lab%208

Lab 8 solution video:

2 Checkpoint questions


Final quiz: need 20 questions
TODO: Confer with Kristen/Kristen's quiz: https://bluemix-quizzes.mybluemix.net/containers/cluster_tutorial/quiz.php [need to turn this into DWorks format, but the questions are good]

Add questions to this wiki.

Next steps Courses on Microservice Design [call to action; links to other resources like courses, tutorials, videos]

Clone this wiki locally