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
Expand All
Collapse All
Introduction
- Objectives
- Who You Are
- The Linux Foundation
- Linux Foundation Training
- Certification Programs and Digital Badging
- Platform Details
Kubernetes Architecture
- What Is Kubernetes?
- Components of Kubernetes
- Challenges
- The Borg Heritage
- Kubernetes Architecture
- Terminology
- Control Plane Node
- Worker Nodes
- Pods
- Services
- 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
- startupProbe
- Testing
- Helm
- Labs
Design
- Traditional Applications: Considerations
- Decoupled Resources
- Transience
- Flexible Framework
- Managing Resource Usage
- Using Label Selectors
- Multi-Container Pods
- Sidecar Container
- Adapter Container
- Ambassador
- initContainer
- Custom Resource Definitions
- 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
Understanding Security
- Security Overview
- Accessing the API
- Authentication
- Authorization
- RBAC
- RBAC Process Overview
- Admission Controller
- Security Contexts
- Pod Security Policies
- Pod Security Standards
- 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
Application 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

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

Please note, Kubernetes Administration (LFS458) is not a pre-requisite for this course. There is overlap in the course materials as each one is designed to stand alone and aligns with the related exams.

Learning Path
Reviews
Feb 2023
Lab activities and exercises were good.
Feb 2023
Fazlur is a great expert on the topic, and truly professional, making sure multiple things are covered within context.
Feb 2023
This training was a high level overview of K8s.
Feb 2023
The detail of many concepts was clear after the course.
Feb 2023
Thanks for the great training!
Feb 2023
Labs are very informative.
Feb 2023
I liked the course, it was interlaced with well structured practical exercises that covered a variety of areas.
Feb 2023
The comprehensive nature of it. I didn't expect us to cover the entire book. I will cover the book on my own.
Feb 2023
Student material is well prepared.
Feb 2023
Great presenter, very knowledgeable.
Feb 2023
I liked the hands on portion/lab, and the ability to work with live Kubernetes cluster.
Feb 2023
The material, lab setup, and the instructor's knowledge.
Feb 2023
Adrian's delivery, and ease with which he explained complex topics.
Feb 2023
The instructor was funny. Content was accessible to all.
Feb 2023
First of all, Daniel's enthusiasm and knowledge. Generally speaking, the course is well organized, topics are detailed, and appear in a logical order. Labs are working fine, with no trouble, and the environment is stable. Finally, the course notes are good.
Feb 2023
Highly skilled instructor, who was very much open to questions, and provided high quality answers. A lot of focus on real-life issues in Kubernetes. Live troubleshooting with tips and tricks, which is very useful.
Feb 2023
The instructor! Michal is very positive, helpful and knowledgeable, and a great guide through the course material!
Jan 2023
Thank you for the helpful training material.
Jan 2023
Absolutely loved talking to Tim, and bouncing ideas on how something can be solved. It's great to see such flexibility, and so many different ways to solve the problem.
Jan 2023
Good course!
Jan 2023
This course will definitely enable me to think about the project I am involved with in a different, and with a new "building a scooter not a city bus" mindset. Really appreciate the instructor being honest and straightforward in his instruction and feedback on the questions. A must do training for k8s app developers!
Jan 2023
Very well laid out steps for hands-on labs.
Jan 2023
The instructor made sure we understood the basics really well.
Jan 2023
Tim is a knowledgeable and patient instructor., I had a good time learning.
Jan 2023
Gives a mindset on how to move from monolith to Kubernetes, lots of examples while going through the course, as well as all the questions we had - answered patiently!
Jan 2023
Content was good, and the instructor explained things very well.
Jan 2023
We were able to ask questions directly related to our project, and get advice on best practices.
Jan 2023
Instructor gave a good overview of the Kubernetes architecture.
Jan 2023
The course content was very crisp, and to the point, the instructor was really thorough with the material. Very patient, and answered the questions thoughtfully.
Jan 2023
Instructor patiently answered an insane number of questions we had.
Jan 2023
The instructor was very helpful, and went above and beyond.
Jan 2023
The best training classes I've ever attended. The instructor was highly knowledgeable, and could elaborate on all questions asked. He was also very engaged in the material, so there was never a boring moment. The slides and the labs were pretty easy to follow.
Jan 2023
Marcus Ross is one of the best instructors I have had the pleasure to learn from. Thank you for explaining Kubernetes so well.
Jan 2023
It was a good convey of overall Kubernetes, according to what was needed from a developer perspective.
Jan 2023
The highly knowledgeable instructor, who made the learning experience fun and smooth.
Jan 2023
Marcus Ross was a great teacher.
Jan 2023
Marcus did a great job teaching, in a hands-on, high-energy and fun manner. Also, I think the lab exercises and course material was very good.
Jan 2023
The quality of the instructor.
Jan 2023
Exciting material, excellent instructor.
Jan 2023
How professional and knowledgeable the instructor was, while keeping it fresh and not boring, considering some of the information can be a bit heavy.