๐ฎ Deploying the Classic 2048 Game on Amazon EKS with AWS Fargate & ALB Ingress Controller

In this article, Iโll walk you through how I deployed the classic 2048 puzzle game on Amazon EKS using AWS Fargate, an ALB Ingress Controller, and Kubernetes best practices. This hands-on project gave me practical experience with Kubernetes on the cloud and AWS infrastructure automation.
๐ Project Overview
The goal of this project was to:
Set up a serverless Kubernetes cluster using Amazon EKS and AWS Fargate.
Deploy the 2048 game app in a Kubernetes namespace.
Use AWS Load Balancer Controller for external traffic routing via an Application Load Balancer.
Expose the game through a public DNS URL.
By completing this, I gained a solid understanding of how containerized applications can be managed and scaled using Kubernetes and AWS services.
๐งฑ Project Modules Breakdown
๐น Module 1: Install EKS with Fargate
Set up an EKS cluster in us-east-1
region using eksctl
with Fargate enabled, enabling serverless pod hosting.
๐น Module 2: Deploy 2048 App
Created a Fargate profile and deployed the 2048 game app in a separate namespace using a sample YAML manifest.
๐น Module 3: Configure IAM OIDC Provider
Configured IAM OIDC provider to enable secure communication between Kubernetes service accounts and AWS IAM roles.
๐น Module 4: Set Up ALB Ingress Controller
Created IAM policies and service accounts, then installed the AWS Load Balancer Controller using Helm charts to allow traffic routing.
๐น Module 5: Results and Access
The 2048 game is publicly accessible via a DNS URL assigned by the Application Load Balancer. A firewall rule was configured to allow access (shown with a screenshot).
๐ DNS Result
After deployment, the 2048 game was accessible at:
CopyEditk8s-game2048-ingress2-bcac0b5b37-1715446488.us-east-1.elb.amazonaws.com
I was able to play the game directly in the browser โ fully running on Kubernetes and AWS! ๐ฏ
๐ธ Screenshots
Here are some visuals from the project
DNS access confirmation
Game interface live in the browser
๐ What I Learned
โ
Managing Kubernetes clusters using eksctl
โ
Deploying workloads using YAML manifests
โ
Using Fargate for serverless pod execution
โ
Configuring IAM roles & policies securely
โ
Setting up ALB Ingress Controllers with Helm
โ
Exposing apps using DNS in a Kubernetes-native way
๐ Final Thoughts
This project not only helped me understand the core concepts of Kubernetes on AWS, but also gave me the confidence to build and deploy real-world applications using cloud-native tools.
๐ If you want to check the full project with all source files and instructions, you can go through this link:
๐ https://github.com/sowmyavallepu/Kubernetes_Project_on_EKS
Subscribe to my newsletter
Read articles from Sowmya Vallepu directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Sowmya Vallepu
Sowmya Vallepu
I am currently pursuing my master's degree at Indiana Wesleyan University, with a focus on expanding my knowledge and expertise in the field of DevOps. Previously, I worked as an Azure DevOps Engineer at RSI SoftTech India Private Limited, where I gained 3 years of hands-on experience in managing Azure DevOps pipelines, cloud infrastructure, and automation processes. During my time in this role, I developed a deep understanding of CI/CD, version control, and deployment strategies. I am passionate about continuous learning and improving software development workflows to drive efficiency and scalability. My goal is to leverage my academic and professional experiences to contribute to innovative DevOps practices in the future.