
In this blog post, Iβll walk you through how I deployed a scalable WordPress website on AWS, featuring load balancing, external database support, auto scaling, and full backup/restore capability β all verified in a detailed deployment report.
π§ What It Does
This cloud-based deployment mirrors a production-grade WordPress setup:
- Launches EC2 with a LAMP stack
- Installs and hosts WordPress
- Migrates database to Amazon RDS
- Adds an Elastic Load Balancer for traffic distribution
- Automates full site backup to S3
- Restores site from S3 backup
- Uses Launch Template + ASG to scale based on CPU usage
- Demonstrates secure SSH access from Windows using PuTTY
π οΈ Tech Stack
| Tool / Service | Purpose |
|---|---|
EC2 | Hosts the WordPress site |
RDS | External MySQL database for WordPress |
S3 | Backup and restore WordPress files/database |
ELB | Load balances traffic across instances |
Auto Scaling | Dynamically adjusts instance count |
Launch Template | Blueprint for EC2 creation in scaling group |
SSH (PuTTY) | Remote access and server management |
π Why I Built It
This project was part of a university assessment designed to simulate real-world cloud engineering workflows. I wanted to learn how to deploy and manage scalable infrastructure using AWS, and gain hands-on experience with DevOps best practices like automation, high availability, and recovery.
π‘ How It Works
- Created a new AWS account and generated an SSH key pair
- Launched an EC2 instance and manually installed WordPress
- Set up Apache, PHP, MySQL, and WordPress configuration
- Migrated the WordPress database to an RDS MySQL instance
- Configured ELB to route traffic across EC2s
- Backed up files and DB to an S3 bucket
- Created a new EC2 from S3 backup
- Created a Launch Template + Auto Scaling Group
- Simulated CPU load to trigger scaling
- Verified SSH access via PuTTY and executed Linux CLI operations
π Project Report
π Download the Full Report (PDF)
This contains:
- β Screenshots for each AWS step
- π Previously live public URLs
- π§Ύ Deployment architecture and flow
- π§ Errors faced and how I resolved them
π What I Learned
- βοΈ How AWS services interconnect to host production web apps
- π Secure server access via SSH keys and PuTTY
- πΎ Real-time site backup/restore using S3
- π Auto Scaling Groups with CPU monitoring
- π οΈ Hands-on practice with ELB, RDS, and EC2
π§ Final Thoughts
This was one of the most valuable DevOps-style projects Iβve completed. It pushed me to explore AWSβs ecosystem hands-on and design a resilient, scalable WordPress deployment from scratch.
If youβre interested in mastering AWS infrastructure for hosting real-world web apps, this project is an excellent starting point. You can explore the report, fork the GitHub repo, and even try deploying your own setup using the same methods.
Build infrastructure that doesnβt just work β but adapts, scales, and recovers automatically.