Kubernetes for App Developers (LFD459)

LFD459
3 days (21 hours)

Course overview

This course will teach you how to containerize, host, deploy, and configure an application in a multi-node cluster. Starting with a simple Python script, you will 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.

The topics covered are directly aligned with the knowledge domains tested by the Cloud Native Computing Foundation Certified Kubernetes Application Developer (CKAD) Program, and will substantially increase students’ ability to become certified.

Learning outcomes

This course teaches participants the following skills:

  • Containerize and deploy a new Python script
  • Configure the deployment with ConfigMaps, Secrets and SecurityContexts
  • Understand multi-container pod design
  • Configure probes for pod health
  • Update and roll back an application
  • Implement services and NetworkPolicies
  • Use PersistentVolumeClaims for state persistence
  • And more

Prerequisites

To get the most out of this course, participants should have:

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 the free Introduction to Kubernetes edX MOOC) is helpful for this course.

Target audience

This course is intended for the following participants:

This course is designed to be vendor- and distribution-neutral, so you will be able to apply these concepts universally.

Course Outline

  1. Introduction
  • Objectives
  • Who You Are
  • The Linux Foundation
  • Linux Foundation Training
  • Certification Programs and Digital Badging
  • Preparing Your System
  • Course Registration
  • Labs
  1. 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
  1. 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
  1. 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
  1. 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
  1. 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
  1. 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
  1. 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
  1. Closing and Evaluation Survey

€1800 ex. VAT

Suggested courses

LFS458
Kubernetes Administration (LFS458)
This course covers the core concepts typically used to build and administer a Kubernetes cluster in production, using vendor-independent tools. We build a cluster, determine network configuration, grow the cluster, deploy applications and configure the storage, security and other objects necessary for typical use. This course offers exposure to the many skills necessary to administer Kubernetes in a production environment and is excellent preparation for the Certified Kubernetes Administrator (CKA) exam. This course does not focus on one vendor’s tools. Most courses are vendor-locked. We use kubeadm to deploy the cluster and focus on tools that would work on anyone’s Kubernetes cluster.

Contact us

You can unsubscribe from our communications at any time.

In order to take into account your request, we must store and process your personal data. If you authorize us to store your personal data for this purpose, check the box below.

By clicking on « Send » below, you authorize SFEIR to store and process the personal data submitted above so that it can provide you with the requested content.