Kubernetes Bootcamp (CKAD)
Kubernetes Bootcamp (CKAD) Course Details:
Kubernetes is a Cloud Orchestration Platform providing reliability, replication, and stability while maximizing resource utilization for applications and services. By the conclusion of this hands-on training, you will go back to work with all necessary commands and practical skills to empower your team to succeed, as well as gain knowledge of important concepts like Kubernetes architecture and container orchestration. We prioritize covering all objectives and concepts necessary for passing the Certified Kubernetes Application Developer (CKAD) exam. You will command and configure a high availability Kubernetes environment (and later, build your own!) capable of demonstrating all “K8s'' features discussed and demonstrated in this course. Your week of intensive, hands-on training will conclude with a mock CKAD exam that matches the real thing.
Call (919) 283-1674 to get a class scheduled online or in your area!
1 - KUBERNETES ARCHITECTURE
- Components
- Understand API deprecations
- Containers
- Define, build and modify container images
- Pods
- Master Services
- Node Services
- K8s Services
- YAML Essentials
- Creating a K8s Cluster
2 - KUBECTL COMMANDS
- Kubernetes Resources
- Kubernetes Namespace
- Kubernetes Contexts
3 - PODS
- What is a Pod?
- Create, List, Delete Pods
- How to Access Running Pods
- Kubernetes Resources
- Managing Cloud Resource Consumption
- Multi-Container Pod Design
- Security Contexts
- Init Containers
- Understand multi-container Pod design patterns (e.g. sidecar, init and others)
- Pod Wellness Tracking
4 - NETWORKING
- Packet Forwarding
- ClusterIP and NodePort Services
- Provide and troubleshoot access to applications via services
- Ingress Controllers
- Use Ingress rules to expose applications
- NetworkPolicy resource
- Demonstrate basic understanding of NetworkPolicies
- Network Plugins
- Defining the Service Mesh
- Service mesh configuration examples
5 - REPLICASETS
- Services
- ReplicaSet Function
- Deploying ReplicaSets
6 - DEPLOYMENTS
- Deployment Object
- Updating/Rolling Back Deployments
- Understand Deployments and how to perform rolling updates
- Deployment Strategies
- Use Kubernetes primitives to implement common deployment strategies (e.g. blue/green or canary)
- Scaling ReplicaSets
- Autoscaling
7 - LABELS AND ANNOTATIONS
- Labels
- Annotations
- Node Taints and Tolerations
8 - JOBS
- The K8s Job and CronJob
- Understand Jobs and CronJobs
- Immediate vs. scheduled internal use
9 - APPLICATION CONFIGURATION
- Understanding and defining resource requirements, limits and quotas
- Config Maps
- Create & consume Secrets
- Patching
- Custom Resource Definition
- Discover and use resources that extend Kubernetes (CRD)
- Managing ConfigMaps and Secrets as Volumes
10 - STORAGE
- Static and dynamic persistent volumes via StorageClass
- K8s volume configuration
- Utilize persistent and ephemeral volumes
- Adding persistent storage to containers via persistent volume claims
11 - INTRODUCTION TO HELM
- Helm Introduction
- Charts
- Use the Helm package manager to deploy existing packages
12 - APPLICATION SECURITY
- Understand authentication, authorization and admission control
- Understand ServiceAccounts
- Understand SecurityContexts
13 - APPLICATION OBSERVABILITY AND MAINTENANCE
- Use provided tools to monitor Kubernetes applications
- How to Troubleshoot Kubernetes
- Basic and Advanced Logging Techniques
- Utilize container logs
- Accessing containers with Port-Forward
- Debugging in Kubernetes
14 - HANDS ON LABS:
- Define, build and modify container images
- Deploy Kubernetes using Ansible
- Isolating Resources with Kubernetes Namespaces
- Cluster Access with Kubernetes Context
- Listing Resources with kubectl get
- Examining Resources with kubectl describe
- Create and Configure Basic Pods
- Debugging via kubectl port-forward
- Imperative vs. Declarative Resource Creation
- Performing Commands inside a Pod
- Understanding Labels and Selectors
- Insert an Annotation
- Create and Configure a ReplicaSet
- Writing a Deployment Manifest
- Perform rolling updates and rollbacks with Deployments
- Horizontal Scaling with kubectl scale
- Implement probes and health checks
- Understanding and defining resource requirements, limits and quotas
- Understand Jobs and CronJobs
- Best Practices for Container Customization
- Persistent Configuration with ConfigMaps
- Create and Consume Secrets
- Understand the Init container multi-container Pod design pattern
- Using PersistentVolumeClaims for Storage
- Dynamically Provision PersistentVolumes with NFS
- Deploy a NetworkPolicy
- Provide and troubleshoot access to applications via services
- Use Ingress rules to expose applications
- Understand the Sidecar multi-container Pod design pattern
- Setting up a single tier service mesh
- Tainted Nodes and Tolerations
- Use the Helm package manager to deploy existing packages
- A Completed Project
- Install Jenkins Using Helm and Run a Demo Job
- Custom Resource Definitions (CRDs)
- Patching
- Understanding Security Contexts for Cluster Access Control
- Utilize container logs
- Advanced Logging Techniques
- Troubleshooting
- Calicoctl
- Deploy a Kubernetes Cluster using Kubeadm
- Monitoring Applications in Kubernetes
- Resource-Based Autoscaling
- Create ServiceAccounts for use with the Kubernetes Dashboard
- Saving Your Progress With GitHub
- CKAD Practice Drill
- Alta Kubernetes Course Specific Updates
- Sourcing Secrets from HashiCorp Vault
- Example CKAD Test Questions
*Please Note: Course Outline is subject to change without notice. Exact course outline will be provided at time of registration.
All topics required by the CKAD exam, including:
- Deploy applications to a Kubernetes cluster
- Pods, ReplicaSets, Deployments, DaemonSets
- Self-healing and observable applications
- Multi-container Pod Design
- Application configuration via Configmaps, Secrets
- Administrate cluster use for your team
- A systematic understanding of Kubernetes architecture
- Troubleshooting and debugging tools
- Kubernetes networking and services