Running Containers on Amazon Elastic Kubernetes Service (Amazon EKS) (RCAEKS) – Outline

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