Training > Web & Application > Kubernetes for App Developers (LFD459)
INSTRUCTOR-LED COURSE

Kubernetes for App Developers (LFD459)

This course will teach you how to containerize, host, deploy, and configure an application in a multi-node cluster. It also serves as preparation for the Certified Kubernetes Application Developer (CKAD) exam.

Who Is It For

This course is for experienced application developers who need to containerize, host, deploy, and configure an application in a multi-node cluster.
read less read more
What You’ll Learn

Starting with a simple Python script, this course will show you how to define application resources and use core primitives to build, monitor and troubleshoot scalable applications in Kubernetes. Working with network plugins, security and cloud storage, you will be exposed to many of the features needed to deploy an application in a production environment.
read less read more
What It Prepares You For

The topics covered are directly aligned with the knowledge domains tested by the CKAD program, and will substantially increase students’ ability to become certified.
read less read more
Course Outline
Introduction
Objectives
Who You Are
The Linux Foundation
Linux Foundation Training
Certification Programs and Digital Badging
Preparing Your System
Course Registration
Labs
Kubernetes Architecture
What Is Kubernetes?
Components of Kubernetes
Challenges
The Borg Heritage
Kubernetes Architecture
Terminology
Master Node
Minion (Worker) Nodes
Pods
Services
Controllers / Operators
Single IP per Pod
Networking Setup
CNI Network Configuration File
Pod-to-Pod Communication
Cloud Native Computing Foundation
Resource Recommendations
Labs
Build
Container Options
Containerizing an Application
Creating the Dockerfile
Hosting a Local Repository
Creating a Deployment
Running Commands in a Container
Multi-Container Pod
readinessProbe
livenessProbe
Testing
Labs
Design
Traditional Applications: Considerations
Decoupled Resources
Transience
Flexible Framework
Managing Resource Usage
Using Label Selectors
Multi-Container Pods
Sidecar Container
Adapter Container
Ambassador
Points to Ponder
Jobs
Labs
Deployment Configuration
Volumes Overview
Introducing Volumes
Volume Spec
Volume Types
Shared Volume Example
Persistent Volumes and Claims
Persistent Volume
Persistent Volume Claim
Dynamic Provisioning
Secrets
Using Secrets via Environment Variables
Mounting Secrets as Volumes
Portable Data with ConfigMaps
Using ConfigMaps
Deployment Configuration Status
Scaling and Rolling Updates
Deployment Rollbacks
Labs
Security
Security Overview
Accessing the API
Authentication
Authorization
ABAC
RBAC
RBAC Process Overview
Admission Controller
Security Contexts
Pod Security Policies
Network Security Policies
Network Security Policy Example
Default Policy Example
Labs
Exposing Applications
Service Types
Services Diagram
Service Update Pattern
Accessing an Application with a Service
Service without a Selector
ClusterIP
NodePort
LoadBalancer
ExternalName
Ingress Resource
Ingress Controller
Service Mesh
Labs
Troubleshooting
Troubleshooting Overview
Basic Troubleshooting Steps
Ongoing (Constant) Change
Basic Troubleshooting Flow: Pods
Basic Troubleshooting Flow: Node and Security
Basic Troubleshooting Flow: Agents
Monitoring
Logging Tools
Monitoring Applications
System and Agent Logs
Conformance Testing
More Resource
Labs
Closing and Evaluation Survey
Evaluation Survey

Learning Path
To get the most out of this course, you should have:

Basic Linux command line and file editing skills and be familiar with using a programming language (such as Python, Node.js, Go). A knowledge of Cloud Native application concepts and architectures (such as is taught in our free Introduction to Kubernetes edX MOOC) is helpful for this course.

Reviews
Oct 2020
We could cover a lot, and I liked the personal experience added by the trainer.
Oct 2020
The course is well structured, and the explanations were comprehensive and complete. Labs were interesting too.
Oct 2020
A nice introduction assuming no knowledge. Even with experience it was pleasant to take a step back and paint a big picture that is easier to understand. The context surrounding the creation and ecosystem of K8s was also nice.
Oct 2020
The trainer knew his subject well, and agreed to look into and answer some specific topics.
Oct 2020
The labs after each chapter are really good.
Sep 2020
Tim is very knowledgeable, he had answers to all the questions along with background knowledge.
Sep 2020
The labs were super useful as we could run things ourselves and be more involved.
Sep 2020
I like the overview about the course given to the new comers to Kubernetes.
Sep 2020
I liked the lectures (some good hints and heads-up shared, like RedHat going to drop Docker), and the labs.
Jun 2020
Tim is very good at covering all the content and answering questions. I learned quite a bit in this class and would definitely recommend this course to my team and others.