๐Ÿš€ Running Applications on Amazon EKS with Fargate + ALB Controller

rakesh thodetirakesh thodeti
2 min read

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

FeatureAmazon EKSSelf-Managed
Control PlaneManaged by AWSYou manage it
Worker NodesFargate (serverless)Your responsibility
ScalingAutoManual
UpdatesAWS-managedYou patch it
CostPay-as-you-goInfra + 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.

0
Subscribe to my newsletter

Read articles from rakesh thodeti directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

rakesh thodeti
rakesh thodeti