Building and maintaining complex distributed systems
June 19–20, 2017: Training
June 20–22, 2017: Tutorials & Conference
San Jose, CA

In-Person Training
Real-world Kubernetes

Jason Hansen (Microsoft), Sean Knox (Microsoft)
Monday, June 19 & Tuesday, June 20, 9:00am - 5:00pm
Location: 230 A

Participants should plan to attend both days of this 2-day training course. Platinum and Training passes do not include access to tutorials on Tuesday.

Kubernetes has emerged as the leading platform for containerized applications. Jason Hansen and Sean Knox offer a deep dive into Kubernetes, from concept to implementation, sharing detailed explanations of its architecture, security, and use cases.

What you'll learn, and how you can apply it

  • Explore Kubernetes from primitives and basic concepts to real-world production implementation

This training is for you because...

  • You're new to Kubernetes and want to quickly get up to speed on the basics, including practical knowledge from real-world usage.
  • You're an intermediate Kubernetes user who wants to better understand Kubernetes's resources, system architecture, and all of the moving parts.

Prerequisites:

  • Basic familiarity with the command line

Hardware and/or installation requirements:

  • For the workshop, you will need a laptop with WiFi and the ability to ssh to a Linux VM that we have provisioned and configured for you. If you are running Mac OS or Linux, you have everything you need for the class! Windows users will need either Bash for Windows or Putty pre-installed.

Kubernetes has emerged as the leading platform for containerized applications. Jason Hansen and Sean Knox offer a deep dive into Kubernetes, from concept to implementation, sharing detailed explanations of its architecture, security, and use cases. You’ll also experiment with the Kubernetes CLI on a production-class cluster.

Outline

Day 1: Kubernetes fundamentals

Setting the stage for Kubernetes

  • A world before configuration management
  • The maturing of cloud providers and IaaS
  • DevOps as a concept
  • The “infrastructure as code” revolution
  • Continuous integration and delivery
  • Containerization hits the mainstream
  • Challenges of the containerized world

A brief history of Kubernetes

  • Provenance from Google
  • Early players and history
  • Evolution of features
  • Declarative versus imperative infrastructure
  • Understanding the community
  • Contributing to Kubernetes

Kubernetes building blocks

  • Docker
  • kubectl
  • Pods
  • Volumes
  • Services
  • Replication
  • Namespaces
  • Labels and selectors

What makes a Kubernetes cluster?

  • Cloud providers survey
  • Networking in Kubernetes
  • Overview of cluster components
  • Nodes
  • etcd2
  • Master: kube-apiserver
  • Master: kube-controller-manager
  • Master: kube-scheduler
  • Worker: kubelet
  • Worker: kube-proxy
  • Cluster add-ons
  • Third-party resources
  • Helm

Running in Kubernetes

  • Common usage patterns overview
  • Deployments in more depth
  • Services in more depth
  • Application health and readiness
  • Monitoring
  • Logging
  • Persistence use cases

Basic troubleshooting

  • Failure domains
  • Common issues
  • Introspecting a running pod
  • Community resources

Wrap-up and Q&A

Day 2: Advanced Kubernetes

Kubernetes review

  • Networking in Kubernetes
  • Nodes
  • etcd2/3
  • Master: kube-apiserver
  • Master: kube-controller-manager
  • Master: kube-scheduler
  • Worker: kubelet
  • Worker: kube-proxy
  • Helm review

Kubernetes API

  • Overview
  • Resource categories
  • Resource objects
  • Resource operations

Resource types in depth

  • Workloads
  • Discovery and load balancing
  • Config and storage
  • Metadata
  • Cluster

kubectl in depth

  • Quick review
  • Application management
  • Declarative application management
  • Working with applications
  • Cluster management
  • kubectl settings and usage

Production cluster anatomy

  • Architecting for high availability
  • Networking in depth
  • Cloud provider hooks
  • Build strategies
  • Application health and readiness
  • Monitoring
  • Logging

Advanced troubleshooting

  • Architecture
  • Docker
  • etcd
  • Master
  • Worker nodes
  • Pods
  • Services
  • Application
  • Networking
  • IaaS provider
  • Host OS
  • Security, authorization, and authentication
  • Disk space
  • Resource overutilization

Wrap-up and Q&A

About your instructors

Photo of Jason Hansen

Jason Hansen is a program manager working on Azure Container Service (ACS) at Microsoft, which he joined through its acquisition of Deis. Jason has a knack for breaking thingsā€”it may be the result of years of bad luck or that he spent too much time grappling with infrastructure software and hardware. Either way, Kubernetes is his home now, and he spends his time working to make it easier for teams to build amazing applications.

Photo of Sean Knox

Sean Knox is a friendgineer working on Azure Container Services and Kubernetes at Microsoft. Previously, he was part of Deis’s solutions architecture team helping teams make this crazy containers thing work best for them. He lives in San Francisco with his partner and their tuxedo cat.

Conference registration

Get the Platinum pass or the Training pass to add this course to your package.

Leave a Comment or Question

Help us make this conference the best it can be for you. Have questions you'd like this speaker to address? Suggestions for issues that deserve extra attention? Feedback that you'd like to share with the speaker and other attendees?

Join the conversation here (requires login)