๐ Running Applications on Amazon EKS with Fargate + ALB Controller

Kubernetes has become the go-to standard for container orchestration.
But letโs be honest โ managing nodes, scaling clusters, and configuring networking can feel overwhelming ๐
.
Thatโs where Amazon Elastic Kubernetes Service (EKS) with AWS Fargate comes in.
In this blog, Iโll walk you through how I deployed the 2048 Game app on EKS using Fargate and exposed it to the internet with the AWS Load Balancer Controller.
๐ Why EKS + Fargate?
No worker node management โ AWS runs the nodes for you
Pay only for what you use โ serverless model
Seamless integration โ IAM, VPC, and ALB work out-of-the-box
High availability โ backed by AWS-managed infra
If youโre a DevOps engineer or cloud enthusiast, this setup saves you time โณ and reduces operational complexity.
โก Project Overview
๐ Tools Required
AWS CLI & eksctl
kubectl
IAM OIDC provider
AWS Load Balancer Controller
๐ Step 1: Create an EKS Cluster with Fargate
eksctl create cluster \
--name demo-cluster \
--region us-east-1 \
--fargate
This sets up a cluster in us-east-1 with Fargate profiles (no EC2 worker nodes needed).
๐ Step 2: Setup IAM OIDC Provider
eksctl utils associate-iam-oidc-provider \
--region us-east-1 \
--cluster demo-cluster \
--approve
This allows Kubernetes service accounts to securely talk to AWS services.
๐ Step 3: Deploy the AWS Load Balancer Controller
The Load Balancer Controller helps manage Application Load Balancers (ALB) and Network Load Balancers (NLB) for Kubernetes Ingress.
kubectl apply -k github.com/aws/eks-charts/stable/aws-load-balancer-controller//crds?ref=master
๐ฎ Step 4: Deploy the 2048 Game App
kubectl apply -f 2048_full.yaml
This manifest includes:
Deployment (pods running the app)
Service (exposing pods internally)
Ingress (mapping requests via ALB)
Check ingress:
kubectl get ingress -n game-2048
Output will give you the ALB DNS name โ paste it in your browser and ๐ enjoy the 2048 game.
๐ EKS vs. Self-Managed Kubernetes
| Feature | Amazon EKS | Self-Managed |
| Control Plane | Managed by AWS | You manage it |
| Worker Nodes | Fargate (serverless) | Your responsibility |
| Scaling | Auto | Manual |
| Updates | AWS-managed | You patch it |
| Cost | Pay-as-you-go | Infra + Ops costs |
๐ก Key Takeaways
EKS + Fargate = No infra headaches โก
Load Balancer Controller = Easy ingress setup
Perfect for DevOps projects, demos, or learning Kubernetes without managing EC2 nodes.
