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

Sowmya VallepuSowmya Vallepu
2 min read

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

0
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.