Kubernetes Fundamentals and Cluster Operations
(EDU-KFCO)
This four-day course is the first step in learning about Containers and Kubernetes Fundamentals and Cluster Operations. Through a series of lectures and lab exercises, the fundamental concepts of containers and Kubernetes are presented and put to practice by containerizing and deploying a two-tier application into Kubernetes.
Objectives
By the end of the course, you should be able to meet the following objectives:
- Build, test, and publish Docker container images
- Become familiar with YAML files that define Kubernetes objects
- Understand Kubernetes core user-facing concepts, including pods, services, and deployments
- Use kubectl, the Kubernetes CLI, and become familiar with its commands and options
- Understand the architecture of Kubernetes (Control plane and its components, worker nodes, and kubelet)
- Learn how to troubleshoot issues with deployments on Kubernetes
- Apply resource requests, limits, and probes to deployments
- Manage dynamic application configuration using ConfigMaps and Secrets
- Deploy other workloads, including DaemonSets, Jobs, and CronJobs
- Learn about user-facing security using SecurityContext, RBAC, and NetworkPolicies
Intended Audience
Anyone who is preparing to build and run Kubernetes clusters
Prerequisites
- Linux concepts and command line proficiency
- General networking proficiency
Course Outline
1 Course Introduction
- Introductions and objectives
2 Containers
- What and Why containers
- Building images
- Running containers
- Registry and image management
3 Kubernetes Overview
- Kubernetes project
- Plugin interfaces
- Building Kubernetes
- Kubectl CLI
4 Beyond Kubernetes Basics
- Kubernetes objects
- YAML
- Pods, replicas, and deployments
- Services
- Deployment management
- Rolling updates
- Controlling deployments
- Pod and container configurations
5 Kubernetes Networking
- Networking within a pod
- Pod-to-Pod Networking
- Services to Pods
- ClusterIP, NodePort, and LoadBalancer
- Ingress controllers
- Service Discovery via DNS
6 Stateful Applications in Kubernetes
- Stateless versus Stateful
- Volumes
- Persistent volumes claims
- StorageClasses
- StatefulSets
7 Additional Kubernetes Considerations
- Dynamic configuration
- ConfigMaps
- Secrets
- Jobs, CronJobs
8 Security
- Network policy
- Applying a NetworkPolicy
- SecurityContext
- runAsUser/Group
- Service accounts
- Role-based access control
9 Logging and Monitoring
- Logging for various objects
- Sidecar logging
- Node logging
- Audit logging
- Monitoring architecture
- Monitoring solutions
- Octant
- VMware vRealize® Operations Manager™
10 Cluster Operations
- Onboarding new applications
- Backups
- Upgrading
- Drain and cordon commands
- Impact of an upgrade to running applications
- Troubleshooting commands
- VMware Tanzu™ portfolio overview