
GTA V running on AWS EC2 g5.2xlarge instance
Introduction
Ever wondered if you could run GTA V in the cloud—not just stream it via a service, but actually install and run the game yourself on an AWS EC2 instance? That’s exactly what I set out to do. To my surprise, it worked—and it worked well.
This post is not your average “how to play games on the cloud” guide. It’s a story of pushing AWS to its creative limits, experimenting with spot instances, managing EBS volumes like puzzle pieces, and overcoming all the quirks of running a AAA game on virtual hardware—all on a budget of less than $5.
Let’s dive in.
The Research: Is This Even Doable?
Before launching any EC2 instances, I looked into whether it was technically possible. AWS offers G5 GPU instances with NVIDIA GPUs that support DirectX 12, which sounded promising. But there wasn’t much documentation or community experience around installing and running heavy desktop games like GTA V directly on EC2.
That made the experiment more exciting. I’d be venturing into mostly unexplored territory.
The Technical Challenges
Running GTA V in the cloud presents several hurdles:
- Large install size: Around 120 GB of files
- GPU requirements: Dedicated graphics power is essential
- Cost: GPU instances aren’t cheap
- Cross-platform workflow: Managing Linux and Windows instances together
The real challenge turned out to be: how do I download and transfer such a large game efficiently, without spending a fortune?
Installation Options Explored
I tried three approaches before landing on the most efficient one.
Option 1: Install Directly on a GPU Instance (g5.2xlarge)
- Pros: Fast GPU, fast network (4–5 Gbps)
- Cons: Epic Games throttles downloads
- Time: ~2 hours
- Cost: ~$1.8/hour = too expensive just to install the game
Option 2: Use a Cheaper EC2 (c5.xlarge)
- Pros: Costs ~$0.35/hour
- Cons: Throttling still applies, took ~3 hours to download
- Total Cost: ~$1.05 — not ideal for budget constraints
✅ Option 3: Use a t2.micro with Legendary CLI
This was the breakthrough.
I launched a t2.micro Debian spot instance (~$0.0016/hour) and used Legendary, a CLI Epic Games client, to install the game.
- Download time: ~3.5 hours
- Cost: <$0.10 total
- Network: 1 Gbps (enough for an overnight download)
This worked smoothly, and by the evening I had GTA V fully installed on my EBS volume.
Moving Game Files to a Windows Instance
Next, I needed to get the files onto a Windows instance with a GPU.
# Install Legendary CLI on Linux
sudo apt update && sudo apt upgrade -y
sudo apt install -y python3 python3-pip git
python3 -m venv venv && source venv/bin/activate
pip3 install legendary-gl
# Authenticate and install
legendary auth
legendary install "Grand Theft Auto V"
Step 1: Mount and Copy Files to an EBS Volume
I attached a new 150 GB EBS volume, formatted it with exFAT for cross-OS support, and copied over the files:
mkfs.exfat /dev/xvdf
mkdir /mnt/gamevol
mount /dev/xvdf /mnt/gamevol
cp -r /path/to/gta5/* /mnt/gamevol/
Step 2: Deal with AZ Mismatch
The t2.micro was in ap-south-1c, but GPU instances were only available in ap-south-1a/b. EBS volumes can’t be directly attached across AZs.
Solution: I created a snapshot of the volume and restored it into ap-south-1a. It took ~2 hours to get completed.
Launching the Windows GPU Instance
I spun up a g5.2xlarge (Windows Server 2025) spot instance and attached the EBS volume. But Windows didn’t like the exFAT filesystem—it prompted a reformat.
Pivot to S3
To avoid losing the data:
- I uploaded the game files to an S3 bucket from a Linux instance
- S3 uploads from EC2 within the same region are free
- Upload took ~45 minutes
aws s3 cp /mnt/gamevol/ s3://tmp-s3-server/ --recursive
Then, on the Windows instance:
aws s3 sync s3://tmp-s3-server D:\EpicGames
Final Setup
Once the files were on the Windows machine:
- Installed NVIDIA drivers
- Installed Epic Games Launcher
- Pointed the launcher to the game directory
- It started verifying the game files
Then came an error: “Unable to update the Rockstar Launcher.” I assumed Rockstar had detected the VM.
The Fix
Turned out to be simple: Run as Administrator. That’s it.
Once I did that, the launcher updated, and the game launched successfully.
The Results
GTA V ran flawlessly on the g5.2xlarge. High settings, smooth graphics, and stable performance.
This wasn’t just about getting a game to run—it was about using cloud infrastructure creatively and efficiently.
Key Stats
- Instances launched: 10–15
- Total storage used: ~1.5 TB across EBS volumes
- Game installation cost: <$0.10 (thanks to t2.micro spot)
- Total project cost: Under $5
- Performance: 60+ FPS at high settings
What I Learned from This Experiment
This hands-on project taught me more about AWS than any course or tutorial ever could. Here are some key takeaways that deepened my understanding of the AWS Cloud:
-
Availability Zones Matter for Storage EBS volumes are tied to specific Availability Zones (AZs), which means they can’t be directly attached across AZs. Creating and restoring snapshots is essential for moving data between zones.
-
S3 + EC2 in the Same Region = Zero Data Transfer Cost Leveraging S3 for intermediate storage was not only reliable but also cost-effective. Data transfers between EC2 and S3 within the same region are completely free, making it perfect for large file movements.
-
Using Spot Instances for Cost Efficiency Spot instances helped me stay well under budget while using powerful compute resources like
g5.2xlarge
and event2.micro
for setup tasks. It’s a smart way to experiment with high-performance instances without burning cash. -
Open-Source Tools Can Outperform Official Options Tools like
Legendary
(a headless Epic Games CLI) enabled me to bypass bloated GUIs and install games quickly and efficiently—especially useful on low-resource instances. -
AWS Cloud Enables Non-Traditional Use Cases Running a high-end game like GTA V in the cloud isn’t just a tech flex—it proves that AWS can support demanding workloads creatively, as long as you understand the infrastructure limits and plan around them.
Final Thoughts
This project was part cloud engineering, part gaming adventure. It pushed my understanding of EC2, storage, networking, and optimization far beyond the basics.
If you’re serious about learning cloud, do something fun and practical. You’ll encounter real-world challenges—and solve them in creative ways.
Now, if you’ll excuse me, I’ve got to explore Los Santos. On the cloud.
Disclaimer: This blog post is intended for educational and research purposes only. All product names, logos, brands, and registered trademarks mentioned — including Grand Theft Auto V, Rockstar Games Launcher, Epic Games, and AWS — are the property of their respective owners. No affiliation or endorsement is implied.
The game was legally obtained through a personal Epic Games account, and no part of this project involved unauthorized distribution or piracy. Running commercial software on cloud instances may violate the software’s End User License Agreement (EULA). Readers are solely responsible for ensuring compliance with any relevant terms, policies, and conditions.
The implementation shared here is a personal experiment meant to explore technical possibilities with cloud infrastructure. We do not encourage, promote, or take responsibility for any misuse of this information.