Detailed Course Outline
Day 1
Module 0: Course Introduction
- Course preparation activities and agenda
Module 1: Container Fundamentals
- Design principles for building applications
- What are containers?
- Components of a container
- Writing Dockerfiles
Module 2: Kubernetes Fundamentals
- Challenges of managing many containers
- What is Kubernetes, and why is it important?
- Components of the Kubernetes control plane
- Kubernetes worker nodes and pods
- Key Kubernetes objects
- Managing Kubernetes with kubectl
- Hands-On Lab 1: Deploying Kubernetes Pods
Module 3: Amazon EKS Fundamentals
- How Amazon EKS manages the Kubernetes control plane
- Fundamentals of Amazon EKS security
- Use cases for extending Amazon EKS to the data plane
- Running worker nodes on managed node groups
- Running containers on AWS Fargate with Amazon EKS
- Amazon EKS tasks versus Kubernetes tasks
Module 4: Building an Amazon EKS Cluster
- Visual review of the Amazon EKS architecture to be built in labs
- IAM authentication
- Amazon VPC and AWS networking fundamentals
- Different methods to create a cluster
- High-level steps in cluster creation
- Function of eksctl
- Preparing for labs: Review the lab activities for the course
- Hands-On Lab 02: Building an Amazon EKS cluster
Day 2
Module 5: Deploying Applications to Your Amazon EKS Cluster
- Publishing container images to Amazon ECR
- Deploying applications with Helm
- Continuous deployment in Amazon EKS
- GitOps and Amazon EKS
- Hands-On Lab 03: Deploying applications
Module 6: Architecting on Amazon EKS Part 1: Observe and Optimize
- Configuring observability in an Amazon EKS cluster
- Collecting metrics
- Using metrics to automatically scale EC2 Auto Scaling groups
- Managing logs
- Application tracing in Amazon EKS
- Gaining and applying insight from observability
- Hands-On Lab 04: Monitoring Amazon EKS
Module 7: Architecting on Amazon EKS Part 2: Balancing Efficiency, Resiliency, and Cost
- Optimizing your Amazon EKS application architecture
- Relationship between cost, efficiency, and resilience
- Anatomy of an Amazon EKS cluster from a cost perspective
- Using tagging with pod placement for cost accountability
- Sizing containers and worker nodes efficiently
Day 3
Module 8: Managing Networking in Amazon EKS
- Review: VPC fundamentals
- The importance of major communication components
- Communication flow in a noncontainerized architecture
- Challenges of network communication in Kubernetes
- Comparing the Docker communication solution with the Kubernetes model
- How Amazon EKS and Amazon VPC simplify inter-node communications
- Managing pod communication in Amazon EKS
- The relationship between communications and scalability
- Running worker nodes in a subnet not associated with the cluster
- Managing service name resolution
- Using a service mesh with Amazon EKS
- Configuring AWS App Mesh
- Hands-On Lab 05: Exploring Amazon EKS Communication
Module 9: Securing Amazon EKS Clusters
- How IAM integrates with Kubernetes Role Based Access Control (RBAC)
- Managing cluster endpoint access control
- Auditing access with AWS CloudTrail logs
- Mitigating security risks during the build of a container image
- Securing network communications
- Managing secrets
- Hands-On Lab 06: Securing Amazon EKS
Module 10: Managing Upgrades in Amazon EKS
- Contrasting Kubernetes version updates and Amazon EKS platform version updates
- Upgrading your Kubernetes version
- Upgrading your Amazon EKS version
- Maintaining your third-party applications