How to Deploy an Application on Amazon EKS

TL;DR
Amazon EKS manages the Kubernetes control plane, reducing the work required to operate components such as the API server, etcd, scheduler, and certificates. Applications can run on EC2 worker nodes or AWS Fargate, while Kubernetes services, Ingress, and an ALB Ingress Controller can expose a deployed application through a public-facing load balancer.
Transcript
hello everyone my name is Abhishek and welcome back to my Channel today is day 22 of AWS devops Zero to Hero series and in this video we will Deep dive into the concept of eks which is elastic kubernetes service this video is a really really important one because kubernetes is the most required skill in a devops engineer's job role these days and i... Read More
Key Insights
- Amazon EKS is a managed Kubernetes offering that handles the control plane, including components such as the API server, etcd, scheduler, cloud controller manager, and controller manager, reducing the operational burden placed on DevOps and cloud engineers.
- A self-managed Kubernetes cluster on AWS requires engineers to create EC2 instances for master and worker nodes, install the required components, configure networking and runtime services, and join the worker nodes to the control plane.
- Kubernetes control plane failures can involve expired certificates, an unavailable or slow API server, a crashed etcd instance, or an unresponsive scheduler, and diagnosing these issues becomes increasingly demanding when an organization operates many clusters.
- Amazon EKS provides a highly available control plane whose underlying master nodes do not need to be directly managed by the user, while also simplifying the process of integrating worker nodes with that control plane.
- Amazon EKS does not automatically manage every data-plane responsibility, because users must still select and operate a worker-node option, such as their own EC2 instances or AWS Fargate for running container workloads.
- EC2 worker nodes require users to plan for high availability by configuring auto scaling, monitoring resource consumption, and defining thresholds so that application workloads remain available when instances fail or capacity is exhausted.
- AWS Fargate is serverless compute designed for running containers, and combining it with EKS reduces responsibility for worker-node failures, capacity management, and infrastructure availability while EKS manages the Kubernetes control plane.
- The demonstrated deployment uses a VPC with public and private subnets, runs a 2048 game application on EKS, creates a Kubernetes service and Ingress, and exposes the application through an ALB Ingress Controller and public-facing load balancer.
Install to Summarize YouTube Videos and Get Transcripts
Explore YouTube Video Summarizer or Get YouTube Transcript Extractor
Questions & Answers
Q: What is Amazon EKS and what does it manage?
Amazon EKS is AWS's managed Kubernetes offering. It manages the Kubernetes control plane, including essential components such as the API server, etcd, scheduler, cloud controller manager, and controller manager. AWS provides this control plane as a highly available service, so users do not need to create, locate, or directly maintain the master nodes or troubleshoot routine control plane infrastructure failures themselves.
Q: Why use Amazon EKS instead of self-managed Kubernetes?
Amazon EKS reduces the maintenance required to operate Kubernetes on AWS. A self-managed installation requires engineers to provision instances, install control plane and worker-node components, connect nodes, renew certificates, and diagnose failures involving etcd, the scheduler, or the API server. With EKS, AWS manages the control plane, which lets engineers focus more of their effort on worker infrastructure and application deployment.
Q: What must be configured in a self-managed Kubernetes cluster?
A self-managed Kubernetes cluster requires master and worker infrastructure to be created and configured. Master nodes need components such as the API server, etcd, scheduler, cloud controller manager, and controller manager. Worker nodes require a container network interface plugin, container runtime, DNS service, and kube-proxy. Engineers must then join the worker nodes to the control plane and maintain the completed cluster.
Q: Does Amazon EKS manage Kubernetes worker nodes?
Amazon EKS primarily provides a managed Kubernetes control plane, not a completely managed data plane. It simplifies the connection between the control plane and worker nodes, but users still choose where workloads run. They can create EC2 worker nodes and manage their availability, monitoring, and scaling, or use AWS Fargate as serverless compute for container workloads.
Q: What is the difference between EC2 and Fargate for EKS workers?
EC2 worker nodes give users responsibility for the instances that run Kubernetes workloads. Users must configure auto scaling, establish monitoring and thresholds, and ensure the nodes remain highly available. Fargate is an AWS serverless compute option designed to run containers. With Fargate and EKS together, EKS manages the control plane while Fargate reduces worker-node infrastructure management.
Q: How is an application exposed publicly from Amazon EKS?
The demonstrated approach deploys the application on the Kubernetes platform, creates a Kubernetes service, and configures Ingress with an ALB Ingress Controller. These resources connect the application to an AWS load balancer, allowing it to be reached from outside the cluster through a public-facing endpoint. The example application used for this process is the 2048 game.
Q: What infrastructure is used for the EKS application project?
The project creates a VPC with public and private subnets and installs the Kubernetes environment inside the private subnet. The 2048 game application is deployed to Amazon EKS, followed by a Kubernetes service, Ingress, and an Ingress controller. A public-facing load balancer then provides external access to the application while the deployment remains within the configured VPC architecture.
Q: What Kubernetes problems does EKS reduce for DevOps engineers?
EKS reduces responsibility for maintaining control plane components and responding to failures such as expired certificates, API server slowness or unavailability, etcd crashes, and scheduler problems. These tasks can become demanding when engineers manage many clusters. AWS operates the EKS control plane and provides an SLA, while users retain responsibility for their selected worker-node model and deployed applications.
Summary & Key Takeaways
-
Amazon EKS provides a managed Kubernetes control plane on AWS. Without EKS, engineers must provision master and worker nodes, install control plane components, configure networking and container runtimes, join the nodes, renew certificates, and investigate failures involving the API server, etcd, scheduler, or other essential cluster components.
-
AWS manages the EKS control plane and provides a highly available Kubernetes cluster, while users choose how application workloads run. EC2 worker nodes require availability planning, monitoring, thresholds, and auto scaling. AWS Fargate provides serverless compute for containers and reduces the responsibility for maintaining worker-node infrastructure.
-
The practical project deploys a 2048 game application on Amazon EKS within a VPC containing public and private subnets. Kubernetes resources include the application, a service, Ingress, and an ALB Ingress Controller. These components make the application accessible outside the cluster through a public-facing AWS load balancer.
Read in Other Languages (beta)
Share This Summary 📚
Summarize YouTube Videos and Get Video Transcripts with 1-Click
Try YouTube Summary with ChatGPT & Claude or YouTube Transcript Generator
Explore More Summaries from Abhishek.Veeramalla 📚






Summarize YouTube Videos and Get Video Transcripts with 1-Click
Try YouTube Summary with ChatGPT & Claude or YouTube Transcript Generator