Business Implications
Delivers a low-cost, highly available public site with automated multi-cloud resilience. Infrastructure-as-code ensures repeatability and rapid recovery during outages, while CDN offload improves global performance. The approach reduces operational risk and provides clear, auditable controls for certificates, DNS, and access.


Steps Performed
Provisioned AWS and Azure hosting with Terraform, uploaded site assets, fronted AWS with CloudFront + ACM, configured Route 53 health-checked failover to Azure, and validated domain/DNS propagation.
1.
Prepare prerequisites
Installed Terraform, AWS CLI, and Azure CLI. Created AWS credentials and Azure service principal. Structured a Terraform project, defined providers, secured secrets in .tfvars, and ran terraform init, validate, and plan.
2.
Deploy AWS hosting
Used Terraform to create an S3 static website bucket, public read policy, and object uploads (HTML/CSS/JS/assets). Added CloudFront distribution and requested an ACM certificate for the domain to enable HTTPS at the edge.
3.
Deploy Azure hosting
Provisioned an Azure Resource Group and Storage Account (StorageV2) with static website enabled. Uploaded site files to the $web container via Terraform, producing a public endpoint as the secondary (DR) site.
4.
Configure DNS failover
Created a Route 53 hosted zone, DNS-validated ACM cert, and health checks for CloudFront (primary) and Azure static site (secondary). Added PRIMARY A-alias to CloudFront and SECONDARY CNAME to Azure with failover routing.
5.
Domain and validation
Registered a low-cost domain on Namecheap, pointed nameservers to Route 53, and verified propagation. Tested primary uptime and simulated outages to confirm automatic failover to Azure (HTTP warning expected without Azure CDN TLS).
AWS Services Used
Amazon S3
Amazon CloudFront
Amazon Route 53
AWS Certificate Manager (ACM)
AWS Identity & Access Management (IAM)
Terraform
AWS CLI
Azure CLI
Namecheap
Technical Tools Used
Multi-cloud IaC automation
CDN static site hosting
DNS failover with health checks
Secure certificates and access control
Skills Demonstrated

Multi-Cloud Weather Tracker with DR (AWS+Azure)
Static hosting with DNS failover across clouds
Deployed a static weather app to AWS S3 + CloudFront and Azure Blob using Terraform. Registered a domain on Namecheap and implemented Route 53 DNS failover between AWS and Azure endpoints for disaster recovery, with health checks and HTTPS via ACM on CloudFront.






